[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ë¤Ä¤¤¤Æ




>½é¤á¤Þ¤·¤Æ¡¢ÂçÀФȿ½¤·¤Þ¤¹¡£
>º£²ó¡¢½é¤á¤ÆÅê¹Æ¤µ¤»¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£

¤è¤¦¤³¤½ Java ¸ß½õ²ñ¤Ø¡£

>ºÇ¶á¡¢Java¤òÊÙ¶¯¤·»Ï¤á¡¢¤è¤¦¤ä¤¯´Êñ¤Ê¥×¥í¥°¥é¥à¤ÏÁȤá¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
>¤·¤«¤·¤Ê¤¬¤é¡¢¤¤¤Þ¤¤¤Á¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Î»È¤¤Æ»¤¬Ê¬¤«¤é¤ºº¤¤Ã¤Æ¤¤¤Þ¤¹¡£
>¼«Ê¬¤Ç¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òµ­½Ò¤·¤Æ¡¢¥¤¥ó¥×¥ê¥á¥ó¥È¤¹¤ë»ö¤Î¥á¥ê¥Ã¥È¡¢¼ã¤·¤¯
>¤Ï¡¢¤³¤ó¤Ê»þ¤Ë¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤ò»ÈÍѤ¹¤ì¤Ð¡¢¸úΨ¤è¤¯¥×¥í¥°¥é¥à¤òºîÀ®¤Ç¤­
>¤ëÅù¡¢¤¢¤ê¤Þ¤·¤¿¤é¶µ¤¨¤Æ¤¤¤¿¤À¤±¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£

»ä¤â Java ¤ò¥á¥¤¥ó¤Î³«È¯¸À¸ì¤Ë¤·¤Æ¤«¤éȾǯ¤¯¤é¤¤¤Ï¡¢
interface ¤Î¤É¤³¤¬¤É¤¦ÊØÍø¤Ê¤Î¤«Îɤ¯Ê¬¤«¤é¤Ê¤«¤Ã¤¿¤Ç¤¹¡£

ºÇ¶á¤ä¤Ã¤ÈÊØÍø¤µ¤¬Ê¬¤«¤Ã¤Æ¤­¤¿¤è¤¦¤Êµ¤¤¬¤·¤Æ¤¤¤ë¤Î¤Ç¤¹¤¬¡¢
¤¤¤¶¤½¤ì¤òÀâÌÀ¤·¤è¤¦¤È¤¹¤ë¤È¤È¤Æ¤âÀâÌÀ¤·¤Ë¤¯¤¤¤È´¶¤¸¤Æ¤¤¤Þ¤¹¡£

¼ÂÎã¤ò¤â¤È¤ËÀâÌÀ¤·¤è¤¦¤È¤·¤Æ¤â¡¢
¤«¤Ê¤êÊ£»¨¤ÊÀâÌÀ¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤³¤È¤¬Â¿¤¤¤Ç¤¹¡£

¡ØPeter Coad¤Ë¤è¤ë Java¥ª¥Ö¥¸¥§¥¯¥ÈÀß·×¡Ù¤Ï interface ¤Ë¤Ä¤¤¤Æ
1¾Ï¤ò³ä¤¤¤ÆÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤ÎËܤϽ鿴¼Ô¸þ¤±¤È¤Ï¸À¤¤Æñ¤¤¤Ç¤¹¡£

°ì¤Ä¸À¤¨¤ë¤³¤È¤Ï¡¢interface ¤Ï¡Ö·¿¡×¤À¡¢¤È¤¤¤¦¤³¤È¤Ç¤¹¡£

interface Address {
  void setAddress(String value);
  String getAddress();
}

¤³¤ó¤Ê intarface ¤¬¤¢¤Ã¤¿¤È¤·¤Æ¡¢

Address anyobject;

¤³¤¦¤¤¤¦ÊÑ¿ô¤òÀë¸À¤·¤¿¤È¤­¡¢
¤³¤ÎÊÑ¿ô¤Ï¤¢¤ë¾ò·ï¤òËþ¤¿¤·¤¿¥ª¥Ö¥¸¥§¥¯¥È¤òÂåÆþ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¤½¤Î¾ò·ï¤È¤Ï¡ÖAddress ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤ò implements ¤·¤Æ¤¤¤ë¤³¤È¡×
¤È¤¤¤¦¤³¤È¤À¤±¤Ç¡¢¤É¤Î¤è¤¦¤ÊÄêµÁ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤Î¤«¤Ï´Ø·¸¤¢¤ê¤Þ¤»¤ó¡£

¤³¤³¤ËÂåÆþ¤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢setAddress(), getAddress() ¤È¤¤¤¦
¥á¥½¥Ã¥É¤ò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬Êݾڤµ¤ì¤Þ¤¹¤«¤é¡¢

  String theaddress = anyobject.getAddress();
 
¤È¤«¡¢

  anyobject.setAddress("ÀÄ¿¹¸©ËÌÄÅ·Ú·´Åìµþ¼");

¤È¤¤¤¦¤è¤¦¤Ê¥á¥½¥Ã¥É¸Æ¤Ó½Ð¤·¤¬½ÐÍè¤ë¤³¤È¤¬Êݾڤµ¤ì¤Þ¤¹¡£

¤³¤ì¤Ï¤È¤¯¤Ë¡¢¥á¥½¥Ã¥É¤Î°ú¿ô¤ä¡¢¥á¥½¥Ã¥É¤ÎÌá¤êÃÍ¤Ë intarface ·¿¤ò
»È¤Ã¤¿¤È¤­¤Ë°ÒÎϤòȯ´ø¤·¤Þ¤¹¡£

class AddressManager {

  private Vector addresses = new Vector();
  
  public void addAddress(Address anyaddress) {
    addresses.addElement(anyaddress);
  }

  public Address getAddressAt(int i) {
    return (Address)addresses.get(i);  // java.lang.Object ¤¬ÊÖ¤ë¤Î¤Ç¥­¥ã¥¹¥È¤¹¤ë
  }

  public void showAll() {
    Enumeration e = addresses.elements();
    while (e.hasMoreElements()) {
      Address oneaddress = (Address)e.nextElement();
      String theaddress = oneaddress.getAddress();
      System.out.println(theaddress);
    }
  }
}

Ê̤μÁÌä¤Ç¤¢¤Ã¤¿¡¢
¡ÖÊ£¿ô¤ÎÃͤò¤Þ¤È¤á¤Æ¥á¥½¥Ã¥É¤ÎÌá¤êÃͤȤ·¤ÆÌᤷ¤¿¤¤¡×¤Ë¤Ä¤¤¤Æ¤â¡¢

  ¡¦class ¤òÄêµÁ¤·¤Æ¤½¤ì¤òÌ᤹¤³¤È¤â²Äǽ¤Ç¤¹¤¬¡¢
  ¡¦interface ¤òÄêµÁ¤·¤Æ¤½¤ì¤òÌᤷ¤Æ¤â¼Â¸½¤Ç¤­¤Þ¤¹¡£

¥ê¥â¡¼¥È¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥½¥Ã¥É¤ò¸Æ¤Ö¤È¤­¤â interface ¤ÏÊØÍø¤Ç¤¹¡£
¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬¥í¡¼¥«¥ë¡¦¥³¥ó¥Ô¥å¡¼¥¿¡¼¤Ë¤¢¤í¤¦¤¬¡¢
¥Í¥Ã¥È¥ï¡¼¥¯·Ðͳ¤ÇÃϵå¤Î΢¦¤Ë¤¢¤í¤¦¤¬¡¢ÌÚÀ±µ°Æ»¾å¤Ë¤¢¤í¤¦¤¬¡¢
Ʊ¤¸¥á¥½¥Ã¥É¤ò¸Æ¤Ö¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
-- 
¤¨¤ó¤É¤¦ ¤ä¤¹¤æ¤­ <yasuyuki@xxxxxxxxxx>
http://www.javaopen.org/jfriends/ (Java¸ß½õ²ñ¥Û¡¼¥à¥Ú¡¼¥¸)