±Þ ÀÌÇØ°¡ ¾ÈµÇ Áú¹® ¿Ã¸®°Ô µÇ¾ú½À´Ï´Ù.
------------------------------------------
'interface A' °¡ ÀÖ°í, ÀÌ A ¿¡´Â 'a();' °¡ ÀÖ½À´Ï´Ù.
ÀÌ A¸¦ implement ÇÏ¿© a ¸¦ ±¸ÇöÇÑ 'class B implement A { b(); } ' °¡ ÀÖ½À´Ï´Ù.
ÀÌÁ¦ ¸¸µé¾îÁø B¸¦ ÀÌ¿ëÇϱâ À§ÇØ C Ŭ·¡½º¸¦ ¸¸µé¾î¼ c ¸Þ¼Òµå¸¦ ¸¸µé¾ú½À´Ï´Ù.
¿©±â¼ b ¸Þ¼Òµå¸¦ »ç¿ëÇϱâ À§ÇØ ¼±¾ðÇÒ ¶§ A °´Ã¼¼±¾ðÀ¸·Î ¹ÞÀ» ¼ö Àִ°ǰ¡¿ä?
class c {
public void c(){
A a = new B(); // interface A·Î ¼±¾ðÇÏ¿© »ç¿ë
}
}
ÀÌ°Ç »ó¼ÓÀÏ ¶§¸¸ °¡´É ÇÑ°Å ¾Æ´Ñ°¡¿ä?
ÀÌ°Ô °¡´ÉÇÏ´Ù¸é ¿Ö ÀÌ·¸°Ô »ç¿ëÇϴ°ÇÁö
±×³É B b = new B(); Çصµ µÇ´Âµ¥...
±Ã±ÝÇÕ´Ï´Ù! |
1. C Ŭ·¡½º¿¡¼´Â B Ŭ·¡½º b()ÀÇ ±¸Á¶¸¦ ¸ô¶óµµ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.
-> Áï A ÀÎÅÍÆäÀ̽º a() ¸¦ ÅëÇØ ÆĶó¹ÌÅÍ¿Í ¸®ÅÏ°ª ¸¸À¸·Î »ç¿ë °¡´ÉÇÏÁÒ
2. ÀÚÀ¯µµ¸¦ ³ôÈü´Ï´Ù.ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇϴ Ŭ·¡½º¸¦ Á÷Á¢ °¡Á®´Ù ¾²¸é Çü½ÄÀÌ Á¤ÇØÁ® ÀÖ¾î¾ß µË´Ï´Ù.
-> ¿¹¸¦µé¾î ÀÎÅÍÆäÀ̽º »ç¿ë½Ã List a = new ArrayList(); Çü½ÄÀ¸·Î ÇÒ¼ö ÀÖÁö¸¸
B Ŭ·¡½º »ç¿ë½Ã´Â ArrayList b = new ArrayList();
¹Ýµå½Ã ArrayList °´Ã¼¿©¾ß ÇÏÁÒ
List ·Î ¿¹¸¦ µé¾îÁֽôÏ, Æò¼Ò¿¡ »ç¿ëÇÏ´ø ³»¿ëÀε¥µµ ±×³É ¸ð¸£°í »ç¿ëÇß´Ù´Â°Ô µü Ƽ°¡ ³ª³×¿ä.
¸íÄèÇÏ°Ô ´äº¯ Áּż °¨»çÇÕ´Ï´Ù.