Java¤ÎÆ» Java¤Ë´Ø¤¹¤ë Web www.javaroad.jp
¥Ë¥å¡¼¥¹¡ÃJava´ðËÜ¡ÃServlet¡¦JSP¡Ã¥ª¡¼¥×¥ó¥½¡¼¥¹¡ÃFAQ¡ÃËÜ¡¦¥½¥Õ¥È¥¦¥§¥¢¡Ã¥ê¥ó¥¯½¸¡Ã·Ç¼¨ÈÄ
Java¤ÎÆ» > Java´ðËÜ > ¥¯¥é¥¹ ¡Ý£±£´¡¥»²¾È·¿¤Î·¿ÊÑ´¹¤È¥­¥ã¥¹¥È
¹¹¿·Æü¡§2005/7/25
¡ü¥¯¥é¥¹¡Ý£±£´¡¥»²¾È·¿¤Î·¿ÊÑ´¹¤È¥­¥ã¥¹¥È
Java¤ÎÊÑ¿ô¤Ë¤ÏÂ礭¤¯Ê¬¤±¤Æ2¤Ä¤Î·¿¤¬¤¢¤ê¤Þ¤¹¡£´ðËÜ·¿¡Ê¥×¥ê¥ß¥Æ¥£¥Ö·¿¡Ë¤È»²¾È·¿¡Ê¥ª¥Ö¥¸¥§¥¯¥È·¿¡Ë¤Ç¤¹¡£»²¾È·¿¤Ë¤Ï¥¯¥é¥¹·¿¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¡¢ÇÛÎ󷿤¬¤¢¤ê¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ëºÝ¡¢¡ÖString¡¡s¡¡=¡¡new¡Ê"Hello")¡¨¡×¤È¸À¤¦·Á¤Ç¥ª¥Ö¥¸¥§¥¯¥Ès¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥Ö¥¸¥§¥¯¥ÈÊÑ¿ôs¤¬¡¢¥¯¥é¥¹·¿¤ÎÊÑ¿ô¤È¸À¤¨¤Þ¤¹¡£¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¡¢ÇÛÎ󷿤˴ؤ·¤Æ¤Ï¡¢¤½¤ì¤¾¤ì¤Î³ºÅö¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

´ðËÜ·¿¤ÏJava¤Ç¤¢¤é¤«¤¸¤áÍѰդµ¤ì¤Æ¤¤¤ëboolean¡¢char¡¢byte¡¢short¡¢int¡¢long¡¢float¡¢double¤Î8¤Ä¤Î¥Ç¡¼¥¿·¿¤Ç¤¹¡£

¤³¤Î¥Ú¡¼¥¸¤Ç¤Ï¤¢¤ë»²¾È·¿¤ÎÊÑ¿ô¤ò¡¢Â¾¤Î»²¾È·¿¤ÎÊÑ¿ô¤ËÊÑ´¹¤¹¤ëÊýË¡¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£ÊÑ´¹¤Ë¤Ï¡¢Java¼Â¹Ô´Ä¶­¤Ë¤è¤ê°ÅÌÛŪ¤ËÊÑ´¹¤µ¤ì¤ë·¿ÊÑ´¹¤È¡¢¥×¥í¥°¥é¥Þ¤¬°Õ¼±Åª¤ËÊÑ´¹¤ò¹Ô¤¦¥­¥ã¥¹¥È¤¬¤¢¤ê¤Þ¤¹¡£¤Ê¤ª¡¢´ðËÜ·¿¤ÎÊÑ¿ô¤ÎÊÑ´¹¤Ë´Ø¤·¤Æ¤Ï¡¢ÊÑ¿ô¡Ê´ðËÜ·¿¤Î·¿ÊÑ´¹¤È¥­¥ã¥¹¥È¡Ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
»²¾È·¿¤Î·¿ÊÑ´¹

»²¾È·¿¤Î·¿ÊÑ´¹¤Ï´ðËÜŪ¤Ë¤Ï¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¡¢¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¡ÊÇÛÎó¤Î¾ì¹ç¤ÏÇÛÎóÍ×ÁǤ¬¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¡¢¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡Ë¤Ø¤ÎÊÑ´¹¤òJava¼Â¹Ô´Ä¶­¤¬Í׵ᤷ¤¿»þ¤Ë¡¢°ÅÌÛŪ¤Ê·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£

¡Ú·¿ÊÑ´¹¤Î¥ë¡¼¥ë¡Û

ÊÑ´¹¸µ¤Î»²¾È·¿
ÊÑ´¹Àè¤Î»²¾È·¿
·¿ÊÑ´¹¤Î¥ë¡¼¥ë
¥¯¥é¥¹·¿
¥¯¥é¥¹·¿
ÊÑ´¹Àè¤Î¥¯¥é¥¹·¿¤¬ÊÑ´¹¸µ¤Î¥¯¥é¥¹·¿¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
ÊÑ´¹Àè¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÊÑ´¹¸µ¤Î¥¯¥é¥¹·¿¤Î¥¯¥é¥¹¤¬¼ÂÁõ¤·¤Æ¤¤¤ë¤³¤È¡£
ÇÛÎó·¿
·¿ÊÑ´¹ÉԲġ£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
¥¯¥é¥¹·¿
ÊÑ´¹Àè¤Î¥¯¥é¥¹·¿¤¬Object¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
ÊÑ´¹Àè¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¤¬ÊÑ´¹¸µ¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¤Î¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¢¤ë¤³¤È¡£
ÇÛÎó·¿
·¿ÊÑ´¹ÉԲġ£
ÇÛÎó·¿
¥¯¥é¥¹·¿
ÊÑ´¹Àè¤Î¥¯¥é¥¹·¿¤¬Object¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
ÊÑ´¹Àè¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¤¬Cloneable¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢Serializable¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¢¤ë¤³¤È¡£
ÇÛÎó·¿
ÊÑ´¹¸µ¤ÎÇÛÎóÍ×ÁǤΥǡ¼¥¿·¿¤È¡¢ÊÑ´¹Àè¤ÎÇÛÎóÍ×ÁǤΥǡ¼¥¿·¿¤Ë¤ª¤¤¤Æ¡¢·¿ÊÑ´¹¤Î¥ë¡¼¥ë¤Ë¹çÃפ·¤Æ¤¤¤ë¤³¤È¡£

°ÅÌÛŪ¤Ê·¿ÊÑ´¹¤Ï¡ÖÂåÆþ»þ¡×¤È¡Ö¥á¥½¥Ã¥É¸Æ¤Ó½Ð¤·»þ¡×¤ËJava¼Â¹Ô´Ä¶­¤è¤ê¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£°Ê²¼¤Ç¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥±¡¼¥¹¤Ë¤ª¤¤¤Æ¡¢¤É¤Î¤è¤¦¤Ë·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¤ë¤Î¤«¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£

ÂåÆþ»þ¤Î·¿ÊÑ´¹

¤¢¤ë»²¾È·¿¤ÎÊÑ¿ô¤ò¡¢Â¾¤Î»²¾È·¿¤ÎÊÑ¿ô¤ËÂåÆþ¤¹¤ëºÝ¤Ë·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£ÊÑ´¹¤Ï¡Ú·¿ÊÑ´¹¤Î¥ë¡¼¥ë¡Û¤Ë½¾¤¤¤Þ¤¹¡£

¡ÚÎ㣱¡ÛÊÑ´¹¸µ¤¬¥¯¥é¥¹·¿¡¢ÊÑ´¹À褬¥¯¥é¥¹·¿¤ÎÎã¤Ç¤¹¡£SuperClass¥¯¥é¥¹¤ÏSubClass¥¯¥é¥¹¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤È¤·¤Þ¤¹¡£

SuperClass s1;
SubClass s2 = new SubClass();
s1 = s2;
//ÊÑ´¹Àè¤ÎÊÑ¿ô(s1)¤Î¥¯¥é¥¹·¿¤Ï¡¢Êѹ¹¸µ¤ÎÊÑ¿ô(s2)¤Î¥¯¥é¥¹·¿¤Î
//¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤¿¤á¡¢·¿ÊÑ´¹¤¬¹Ô¤ï¤ìÂåÆþ²Äǽ¤È¤Ê¤ê¤Þ¤¹¡£

SuperClass s1 = new SuperClass();
SubClass s2;
s2 = s1;
//ÊÑ´¹Àè¤ÎÊÑ¿ô(s2)¤Î¥¯¥é¥¹·¿¤Ï¡¢Êѹ¹¸µ¤ÎÊÑ¿ô(s1)¤Î¥¯¥é¥¹·¿¤Î
//¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤¹¡£

¡ÚÎ㣲¡ÛÊÑ´¹¸µ¤¬¥¯¥é¥¹·¿¡¢ÊÑ´¹À褬¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿¤ÎÎã¤Ç¤¹¡£ExClass¥¯¥é¥¹¤ÏExInterface¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¤â¤Î¤È¤·¤Þ¤¹¡£

ExClass class1 = new ExClass();
ExInterface interface1;
interface1 = class1;
//ÊÑ´¹Àè¤ÎÊÑ¿ô(interface1)¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢
//Êѹ¹¸µ¤ÎÊÑ¿ô(class1)¤Î¥¯¥é¥¹¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢
//·¿ÊÑ´¹¤¬¹Ô¤ï¤ìÂåÆþ²Äǽ¤È¤Ê¤ê¤Þ¤¹¡£

ExClass class1 = new ExClass();
OtherInterface ointerface1;
ointerface1 = class1;
//ÊÑ´¹Àè¤ÎÊÑ¿ô(ointerface1)¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢
//Êѹ¹¸µ¤ÎÊÑ¿ô(class1)¤Î¥¯¥é¥¹¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢
//¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤¹¡£

¡ÚÎ㣳¡ÛÊÑ´¹¸µ¤¬ÇÛÎó·¿¡¢ÊÑ´¹À褬ÇÛÎ󷿤ÎÎã¤Ç¤¹¡£SuperClass¥¯¥é¥¹¤ÏSubClass¥¯¥é¥¹¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤È¤·¤Þ¤¹¡£

//SuperClass¤ÎÀë¸À¡£
class SuperClass {
  public static void main(String[] args) {
    SuperClass[] superArray;  //(1)
    SubClass[] subArray = new SubClass[5];  //(2)

    for (int i = 0; i < subArray.length; i++) {  //(3)
      subArray[i] = new SubClass();
    }

    superArray = subArray;  //(4)ÂåÆþ¤Ë¤è¤ë·¿ÊÑ´¹
  }
}

//SubClass¤ÎÀë¸À¡£SuperClass¤ò·Ñ¾µ¡£
class SubClass extends SuperClass {}

¡Ú²òÀ⣳¡Û

(1). SuperClass¥¯¥é¥¹¤ÎÇÛÎósuperArray¤òÀë¸À¤·¤Æ¤¤¤Þ¤¹¡£
(2). SubClass¥¯¥é¥¹¤ÎÇÛÎósubArray¤òÀë¸À¡¢À¸À®¤·¤Æ¤¤¤Þ¤¹¡£
(3). for¥ë¡¼¥×¤ò»ÈÍѤ·¡¢ÇÛÎósubArray¤ÎÍ×ÁǤËÂФ·¡¢¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤·¤Æ¤¤¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤ÎÇÛÎó¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ï¡¢¸Ä¡¹¤ÎÇÛÎóÍ×ÁǤËÂФ·¡¢¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
(4). ÊÑ´¹¸µ¤ÎÊÑ¿ô¡ÊsubArray¡Ë¤òÊÑ´¹Àè¤ÎÊÑ¿ô¡ÊsuperArray¡Ë¤ËÂåÆþ¤·¤Æ¤¤¤Þ¤¹¡£superArray¤ÎÇÛÎóÍ×ÁǤÏsubArray¤ÎÇÛÎóÍ×ÁǤΥ¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤¿¤á¡¢·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¡¢ÂåÆþ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¥á¥½¥Ã¥É¸Æ¤Ó½Ð¤·»þ¤Î·¿ÊÑ´¹

¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹ºÝ¡¢¸Æ¤Ó½Ð¤¹¥á¥½¥Ã¥É¤Î°ú¿ô¤Î·¿¤ËÍ׵ᤵ¤ì¤Æ¤¤¤ë·¿¤È°Û¤Ê¤ë·¿¤ò»ØÄꤷ¤¿¾ì¹ç¡¢°ÅÌÛŪ¤Ê·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£¤½¤ÎºÝ¤ÎÊÑ´¹¤â¡Ö·¿ÊÑ´¹¤Î¥ë¡¼¥ë¡×¤Ë½¾¤¤¤Þ¤¹¡£

¡ÚÎ㣴¡Û¥á¥½¥Ã¥É¸Æ¤Ó½Ð¤·»þ¤Ë·¿ÊÑ´¹¤¬¹Ô¤ï¤ì¤ëÎã¤Ç¤¹¡£

String ex1 = new String("Hello");
StringBuffer ex2 = new StringBuffer("Hello");
boolean result = ex1.equals(ex2);
//equals¥á¥½¥Ã¥É¤Ï°ú¿ô¤ËObject·¿¤ÎÊÑ¿ô¤òÍ׵ᤷ¤Þ¤¹¡£
//Object¥¯¥é¥¹¤Ï¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤¿¤á¡¢
//StringBuffer·¿¤ÎÊÑ¿ôex2¤ÏObject·¿¤Ë·¿ÊÑ´¹¤µ¤ì¡¢equals¤¬
//¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
//¢¨String¥¯¥é¥¹¤Îequals¥á¥½¥Ã¥É¤ÏËÜÍè¤ÏString·¿¤ÎÊÑ¿ô¤Ë
//»ÈÍѤ·¤Þ¤¹¡£

String ex1 = new String("Hello");
StringBuffer ex2 = new StringBuffer("Hello");
boolean result = ex1.equalsIgnoreCase(ex2);
//equalsIgnoreCase¥á¥½¥Ã¥É¤Ï°ú¿ô¤ËString·¿¤ÎÊÑ¿ô¤òÍ׵ᤷ
//¤Þ¤¹¡£
//ÊÑ¿ôex2¤ÏStringBuffer·¿¤Ç¤¢¤ê¡¢¡Ú·¿ÊÑ´¹¤Î¥ë¡¼¥ë¡Û¤Ë¤â¹ç
//Ãפ·¤Ê¤¤¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤¹¡£
»²¾È·¿¤Î¥­¥ã¥¹¥È

¥­¥ã¥¹¥È¤È¤Ï¥×¥í¥°¥é¥Þ¤¬°Õ¼±Åª¤Ë¹Ô¤¦ÊÑ´¹½èÍý¤Ç¤¹¡£¥­¥ã¥¹¥È¤ÏÊÑ´¹¤·¤¿¤¤·¿¤ò¡Ê¡¡¡Ë¤Ç°Ï¤ß¡¢ÊÑ´¹¸µ¤ÎÊÑ¿ô¤ÎÁ°¤Ë»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¹Ô¤¤¤Þ¤¹¡£

¡ÊÊÑ´¹¤·¤¿¤¤·¿¡ËÊÑ´¹¸µ¤ÎÊÑ¿ô¡¨

»²¾È·¿¤Î¥­¥ã¥¹¥È¤Ï´ðËÜ·¿¤Î¥­¥ã¥¹¥È¤È°Û¤Ê¤ê¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥ë¡¼¥ë¤È¼Â¹Ô»þ¤Î¥ë¡¼¥ë¤ò°Õ¼±¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì¤Ï¡¢»²¾È·¿¤Î¥Ç¡¼¥¿¤Ë¤Ï¼ÂÂΤǤϤʤ¯¡¢¼ÂÂΤ¬Êݸ¤µ¤ì¤Æ¤¤¤ë°ÌÃÖ¤òɽ¤¹¥¢¥É¥ì¥¹¾ðÊ󤬳ÊǼ¤µ¤ì¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£

»²¾È·¿¥Ç¡¼¥¿¤Ï°Ê²¼¤Î¹½À®¤ò¼è¤Ã¤Æ¤¤¤Þ¤¹¡£¥Ç¡¼¥¿¤Î¼ÂÂΤÏÊÑ¿ô¤È¤ÏÊ̤ξì½ê¤Ë³ÊǼ¤µ¤ì¡¢»²¾È·¿ÊÑ¿ôs¤Ë¤Ï¼ÂÂΤò»²¾È¤¹¤ë¥¢¥É¥ì¥¹¾ðÊ󤬳ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤¬»²¾È·¿¤È¸À¤ï¤ì¤Æ¤¤¤ëÍýͳ¤Ç¤¹¡£

»²¾È·¿¥Ç¡¼¥¿

¥³¥ó¥Ñ¥¤¥é¤Ï»²¾È·¿¤ÎÊÑ¿ô¤¬»²¾È¤¹¤ë¼ÂÂΤ¬¤É¤Î¤è¤¦¤Ê¤â¤Î¤«¤Ï¥³¥ó¥Ñ¥¤¥ë¤¹¤ë»þÅÀ¤Ç¤Ï¤ï¤«¤ê¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥¨¥é¡¼¤¬½Ð¤Ê¤¯¤Æ¤â¡¢¼Â¹Ô¤¹¤ë»þÅÀ¤Ç½é¤á¤Æ¼Â¹Ô»þ¤Î¥ë¡¼¥ë¤Ë¤½¤°¤ï¤Ê¤¤¤ÈȽÃǤµ¤ì¡¢¥¨¥é¡¼¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¤ò°Ê²¼¤Ëµ­ºÜ¤·¤Þ¤¹¡£¡Ú¼Â¹Ô»þ¤Î¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¡Û¤Ï¡Ú·¿ÊÑ´¹¤Î¥ë¡¼¥ë¡Û¤ÈƱÍͤǤ¹¡£

¡Ú¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¡Û

ÊÑ´¹¸µ¤Î»²¾È·¿
ÊÑ´¹Àè¤Î»²¾È·¿
·¿ÊÑ´¹¤Î¥ë¡¼¥ë
¥¯¥é¥¹·¿
¥¯¥é¥¹·¿
ÊÑ´¹¸µ¤Î¥¯¥é¥¹¤È¡¢ÊÑ´¹Àè¤Î¥¯¥é¥¹¤Ë·Ñ¾µ´Ø·¸¤¬¤¢¤ë¤³¤È¡£¤É¤Á¤é¤¬¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤Ã¤Æ¤â¤«¤Þ¤ï¤Ê¤¤¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
¤¹¤Ù¤Æ¥­¥ã¥¹¥È²Äǽ¡£
ÇÛÎó·¿
»²¾È·¿¤ÎÇÛÎó¤Ç¤¢¤ë¤³¤È¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
¥¯¥é¥¹·¿
¤¹¤Ù¤Æ¥­¥ã¥¹¥È²Äǽ¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
¤¹¤Ù¤Æ¥­¥ã¥¹¥È²Äǽ¡£
ÇÛÎó·¿
¥­¥ã¥¹¥ÈÉԲġ£
ÇÛÎó·¿
¥¯¥é¥¹·¿
ÊÑ´¹Àè¤Î¥¯¥é¥¹·¿¤¬Object¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¡£
¥¤¥ó¥¿¥Õ¥§¡¼¥¹·¿
¥­¥ã¥¹¥ÈÉԲġ£
ÇÛÎó·¿
ÊÑ´¹¸µ¤ÎÇÛÎóÍ×ÁǤΥǡ¼¥¿·¿¤È¡¢ÊÑ´¹Àè¤ÎÇÛÎóÍ×ÁǤΥǡ¼¥¿·¿¤Ë¤ª¤¤¤Æ¡¢¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¤Ë¹çÃפ·¤Æ¤¤¤ë¤³¤È¡£

¢¨¥¯¥é¥¹·¿¤¬final½¤¾þ»Ò¤ò¼ÂÁõ¤·¤¿¤â¤Î¤Ç¤¢¤ë¾ì¹ç¡¢¾åµ­¤Î¥ë¡¼¥ë¤È¤Ï°Û¤Ê¤ê¤Þ¤¹¡£¤·¤«¤·ÉÑÈˤ˻ÈÍѤ¹¤ë¥±¡¼¥¹¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢¤³¤³¤Ç¤Ï³ä°¦¤·¤Þ¤¹¡£

¡ÚÎ㣵¡Û»²¾È·¿¤Î¥­¥ã¥¹¥È¤ÎÎã¤Ç¤¹¡£
SuperClassA¤ÏSubClassA1¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¤·¤Þ¤¹¡£
SuperClassA¤ÏSubClassA2¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¤·¤Þ¤¹¡£

SubClassA1 a1 = new SubClassA1();
SuperClassA a;
SubClassA2 a2;

a = (SuperClassA)a1;  //(1)¥³¥ó¥Ñ¥¤¥ëOK¡¢¼Â¹ÔOK
a2 = (SubClassA2)a;  //(2)¥³¥ó¥Ñ¥¤¥ëOK¡¢¼Â¹ÔNG

¡Ú²òÀ⣵¡Û

(1). ÊÑ¿ôa¤ÈÊÑ¿ôa1¤Ë¤Ï¥¯¥é¥¹¤Î·Ñ¾µ´Ø·¸¤¬¤¢¤ë¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥ë¤ÏÀ®¸ù¤·¤Þ¤¹¡£¤Þ¤¿¡¢¼ÂÂΤˤª¤¤¤Æ¤â¡¢ÊÑ¿ôa¤ÏÊÑ¿ôa1¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤¢¤ë¤¿¤á¡¢¡Ú¼Â¹Ô»þ¤Î¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¡Û¤Ë¹çÃפ·¡¢ ¼Â¹Ô¤âÀ®¸ù¤·¤Þ¤¹¡£
(2). ÊÑ¿ôa2¤ÈÊÑ¿ôa¤Ë¤Ï¥¯¥é¥¹¤Î·Ñ¾µ´Ø·¸¤¬¤¢¤ë¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥ë¤ÏÀ®¸ù¤·¤Þ¤¹¡£¼ÂÂΤˤª¤¤¤Æ¤Ï¡¢ÊÑ¿ôa¤Î¼ÂÂΤϭ¡¤ÇÂåÆþ¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¤¿¤áSubClassA1¤Ç¤¹¡£ÊÑ¿ôa2¤Î¼ÂÂΤÏSubClassA2¤Ç¤¹¡£SubClassA2¤ÏSubClassA1¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢ ¡Ú¼Â¹Ô»þ¤Î¥­¥ã¥¹¥È¤Î¥ë¡¼¥ë¡Û¤Ë¹çÃפ»¤º¡¢Îã³°¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£
¤³¤Î¥Ú¡¼¥¸¤Î¥È¥Ã¥×¤Ø
¥Ë¥å¡¼¥¹¡ÃJava´ðËÜ¡ÃServlet¡¦JSP¡Ã¥ª¡¼¥×¥ó¥½¡¼¥¹¡ÃFAQ¡ÃËÜ¡¦¥½¥Õ¥È¥¦¥§¥¢¡Ã¥ê¥ó¥¯½¸¡Ã·Ç¼¨ÈÄ
Java¤ÎÆ»_CopyrightJava¤ÎÆ»