ºìÁªLinuxÃÅ»§
Linux°ïÖú

JavaÖеÄÁ½¸öÌØÊâ±äÁ¿thisºÍsuper

·¢²¼Ê±¼ä:2006-06-01 08:13:46À´Ô´:ºìÁª×÷Õß:cha
¡¡¡¡ÔÚJavaÖÐÓÐÁ½¸ö·Ç³£ÌØÊâµÄ±äÁ¿£ºthisºÍsuper£¬ÕâÁ½¸ö±äÁ¿ÔÚʹÓÃÇ°¶¼ÊDz»ÐèÒªÉùÃ÷µÄ¡£this±äÁ¿Ê¹ÓÃÔÚÒ»¸ö³ÉÔ±º¯ÊýµÄÄÚ²¿£¬Ö¸Ïòµ±Ç°¶ÔÏ󣬵±Ç°¶ÔÏóÖ¸µÄÊǵ÷Óõ±Ç°ÕýÔÚÖ´Ðз½·¨µÄÄǸö¶ÔÏó¡£super±äÁ¿ÊÇÖ±½ÓÖ¸Ïò³¬ÀàµÄ¹¹Ô캯Êý£¬ÓÃÀ´ÒýÓó¬ÀàÖеıäÁ¿ºÍ·½·¨¡£Òò´ËËüÃǶ¼ÊǷdz£ÓÐÓõıäÁ¿£¬ÏÂÃæÎÒÏë½éÉÜÒ»ÏÂthisºÍsuperµÄʹÓ÷½·¨¡£

¡¡¡¡1¡¢this

¡¡¡¡ÈÃÎÒÃÇÏÈ¿´Ò»¶Î´úÂë°É£º

¡¡¡¡class PersonInformation

¡¡¡¡{

¡¡¡¡¡¡String name,gender,nationality,address;

¡¡¡¡¡¡int age;

¡¡¡¡¡¡void PersonInformation(String p_name,String p_gender,String p_nationality,String p_address,int p_age)

¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡name=p_name;

¡¡¡¡¡¡¡¡gender=p_gender;

¡¡¡¡¡¡¡¡nationality=p_nationality;

¡¡¡¡¡¡¡¡address=p_address;

¡¡¡¡¡¡¡¡age=p_age;

¡¡¡¡¡¡}

¡¡¡¡}
¡¡
¡¡¡¡Äã»á·¢ÏÖ£¬ÔÚPersonInformation()º¯ÊýÖÐÕâ¸ö¶ÔÏóµÄ·½·¨Ìáʾ¿ÉÒÔÖ±½Ó·ÃÎʶÔÏóµÄ³ÉÔ±±äÁ¿µÄ£¬¶øÇÒÔÚͬһ¸ö·¶Î§ÖУ¬¶¨ÒåÁ½¸öÏàͬµÄÃû×ֵľֲ¿±äÁ¿ÊDz»ÔÊÐíµÄ£¬Èç¹ûȷʵÏëʹÀàµÄ³ÉÔ±±äÁ¿ºÍ·½·¨µÄ²ÎÊý»ò·½·¨×Ô¼º¶¨ÒåµÄ¾Ö²¿±äÁ¿Í¬ÃûµÄ»°¾ÍÐèÒªÏëÒ»ÖÖ·½·¨Ê¹³ÉÔ±±äÁ¿Óë¸üËüͬÃûµÄ·½·¨²ÎÊý»ò¾Ö²¿±äÁ¿Çø·Ö¿ªÀ´£¬Õâ¾ÍҪʹÓõ½this±äÁ¿¡£ÏÂÃæÎÒÏë¸ÄдһÏÂÉÏÃæµÄ´úÂ룬ʹPersonInformationÀàµÄ¹¹Ô캯ÊýµÄÿ¸ö²ÎÊý¶¼ÓÐÓë¶ÔÏó³ÉÔ±±äÁ¿ÏàͬµÄÃû×Ö£¬¶ø³ÉÔ±±äÁ¿µÄ³õÖµÓɲÎÊý¸ø³ö¡£

¡¡¡¡class PersonInformation

¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡String name,gender,nationality,address;

¡¡¡¡¡¡¡¡int age;

¡¡¡¡¡¡¡¡void PersonInformation(String name,String gender,String nationality,String address,int age)

¡¡¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡this.name=name;

¡¡¡¡¡¡¡¡this.gender=gender;

¡¡¡¡¡¡¡¡this.nationality=nationality;

¡¡¡¡¡¡¡¡this.address=address;

¡¡¡¡¡¡¡¡this.age=age;

¡¡¡¡¡¡¡¡}

¡¡¡¡¡¡}

¡¡¡¡ÓÉÉÏÒ»ÀýÖУ¬ÎÒÃÇ¿ÉÒÔ¿´³ö£¬¸Ã¹¹Ô캯ÊýÖбØÐëʹÓÃthis£¬thisÔÚ·½·¨ÌåÖØÓÃÀ´Ö¸ÏòÒýÓõ±Ç°ÕýÔÚÖ´Ðз½·¨µÄÄǸö¶ÔÏóʵÀý£¬this±äÁ¿µÄÀàÐÍ×ÜÊÇΪ°üº¬Ç°Ö´Ðз½·¨µÄÀ࣬ÉÏÀýÖУ¬ÎÒÃÇÒªÇø±ð²ÎÊýnameºÍ³ÉÔ±±äÁ¿name,д³Éname=nameÏÔÈ»ÊDz»ÔÊÐíµÄ£¬ÔÚ²ÎÊý»ò¾Ö²¿±äÁ¿ÃûÓëÀà³ÉÔ±±äÁ¿Í¬ÃûµÄʱºò£¬ÓÉÓÚ²ÎÊý»ò¾Ö²¿±äÁ¿µÄÓÅÏȼ¶¸ß£¬ÕâÑùÔÚ·½·¨ÌåÖвÎÊýÃû»ò¾Ö²¿±äÁ¿Ãû½«Òþ²ØͬÃûµÄ³ÉÔ±±äÁ¿£¬Òò´Ë£¬ÎªÁËÖµÃû³ÉÔ±±äÁ¿£¬Äã±ØÐëʹÓÃthisÏÔʾµØÖ¸Ã÷µ±Ç°¶ÔÏó¡£

¡¡¡¡ÓÐʱºò»áÓöµ½ÕâÖÖÇé¿ö£¬ÎÒÃÇÈ«ÃæµÄ·ÃÎʵ±Ç°¶ÔÏ󣬶ø²»ÊÇ·ÃÎÊijһ¸ö¸ö±ðµÄʵÀý¶ÔÏó£¬ÎÒÃÇÒ²¿ÉÒÔʹÓÃthis£¬²¢ÀûÓÃJavaÖеÄtoString()·½·¨£¨ËüÄܹ»·µ»ØÒ»¸öÃèÊöÕâ¸ö¶ÔÏóµÄ×Ö·û´®£©Èç¹û°ÑÈκÎÒ»¸ö¶ÔÏ󴫵ݵ½System.out.println·½·¨ÖУ¬Õâ¸ö·½·¨µ÷ÓÃÕâ¸ö¶ÔÏóµÄtoString·½·¨£¬²¢´òÓ¡³ö½á¹û×Ö·û´®£¬ËùÒÔ£¬ÎÒÃÇ¿ÉÒÔÓÃÈçÏ·½·¨System.out.println(this)£¬À´´òÓ¡³öÈκζԷ½·¨¹ÌÓвÎÊýµÄµ±Ç°×´Ì¬¡£

¡¡¡¡this»¹ÓÐÒ»¸öÓ÷¨£¬¾ÍÊǹ¹Ô캯ÊýµÄµÚÒ»¸öÓï¾ä£¬ËüµÄÐÎʽÊÇthis(²ÎÊý±í£©£¬Õâ¸ö¹¹Ô캯Êý¾Í»áµ÷ÓÃͬһ¸öÀàµÄÁíÒ»¸öÏà¶ÔµÄ¹¹Ô캯Êý¡£Çë¿´ÏÂÃæµÄÀý×Ó£º

¡¡¡¡class UserInfo

¡¡¡¡{

¡¡¡¡¡¡public UserInfo(String name)

¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡this(name,aNewSerialNumber);

¡¡¡¡¡¡}

¡¡¡¡¡¡public Userinfo(String name,int number)

¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡userName=name;

¡¡¡¡¡¡¡¡userNumber=number;

¡¡¡¡¡¡}

¡¡¡¡¡¡}

¡¡¡¡Èç¹ûÄãµ÷ÓÃUserInfor newinfotable = new UserInfo("aaron")ºó,¾Í»á×Ô¶¯µ÷ÓÃUserInfo(String name,int number)¹¹Ô캯Êý¡£

¡¡¡¡¡¡¿É¼û£¬ÊìÁ·ÕÆÎÕthisÔÚJava³ÌÐòÉè¼Æ¹ý³ÌÖÐÊǷdz£ÖØÒªµÄ
2¡¢super

¡¡¡¡ÔÚJavaÖУ¬ÓÐʱ»¹»áÓöµ½×ÓÀàÖеijÉÔ±±äÁ¿»ò·½·¨Ó볬ÀࣨÓÐʱҲ³Æ¸¸ÀࣩÖеijÉÔ±±äÁ¿»ò·½·¨Í¬Ãû£¬ÒòΪ×ÓÀàÖеijÉÔ±±äÁ¿»ò·½·¨ÃûÓÅÏȼ¶¸ß£¬ËùÒÔ×ÓÀàÖеÄͬÃû³ÉÔ±±äÁ¿ºÍ·½·¨¾ÍÒþ²ØÁ˳¬ÀàµÄ³ÉÔ±±äÁ¿»ò·½·¨£¬µ«ÊÇÎÒÃÇÈç¹ûÏëҪʹÓó¬ÀàÖеÄÕâ¸ö³ÉÔ±±äÁ¿»ò·½·¨£¬´Ëʹ¾ÍÐèÒªÓõ½super£¬Çë¿´ÏÂÃæµÄÀà¡£

¡¡¡¡¡¡class Country

¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡String name;

¡¡¡¡¡¡¡¡void value()

¡¡¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡¡¡name="China";

¡¡¡¡¡¡¡¡}

¡¡¡¡¡¡}

¡¡¡¡ÏÂÃæµÄ×ÓÀàÖУ¬×ÔÀàµÄ³ÉÔ±±äÁ¿ºÍ·½·¨Òþ²ØÁ˳¬ÀàµÄ³ÉÔ±±äÁ¿nameºÍ·½·¨value()£¬

¡¡¡¡¡¡class City extends Country

¡¡¡¡¡¡¡¡String name;

¡¡¡¡¡¡¡¡void value()

¡¡¡¡¡¡¡¡{

¡¡¡¡¡¡¡¡¡¡name="Beijing";

¡¡¡¡¡¡¡¡¡¡super.value();

¡¡¡¡¡¡¡¡¡¡System.out.println(name);

¡¡¡¡¡¡¡¡¡¡System.out.println(super.name);

¡¡¡¡¡¡¡¡}
¡¡
¡¡¡¡¡¡ÎªÁËÔÚ×ÓÀàÖÐÒýÓó¬ÀàÖеijÉÔ±±äÁ¿nameºÍ·½·¨value()£¬ÔÚ´úÂëÖÐÎÒÃÇʹÓÃÁËsuper£¬super.nameºÍsuper.value()£»

¡¡¡¡¡¡ËùÒÔÏÔʾµÄ½á¹ûΪ

¡¡¡¡¡¡Beijing

¡¡¡¡¡¡China

¡¡¡¡¡¡Èç¹ûÎÒÃÇÏëҪʹÓó¬ÀàµÄ¹¹Ô캯ÊýÔòÓ¦µ±Ê¹ÓÃsuper(²ÎÊýÁÐ±í£©µÄÐÎʽ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ