Java clone»úÖÆ
1¡¢ Java¶ÔÏó¸³Öµ
Java´úÂë
Employee e1=
new
Employee(
"Àî"
);
//EmployeeÊÇÒ»¸ö×Ô¶¨ÒåÀà
Employee e2=e1; //¸³Öµ¶ÔÏó
e2.setName("Íõ"
);
//¸Ä±ä¶ÔÏóe2µÄÃû×Ö
System.out.println(e1.getName()); //´òÓ¡e1µÄ½á¹û: Íõ
Employee e1=new Employee("Àî"); //EmployeeÊÇÒ»¸ö×Ô¶¨ÒåÀà
Employee e2=e1; //¸³Öµ¶ÔÏó
e2.setName("Íõ");//¸Ä±ä¶ÔÏóe2µÄÃû×Ö
System.out.println(e1.getName()); //´òÓ¡e1µÄ½á¹û: Íõ
Õâ¾ÍÊÇJavaµÄ¶ÔÏó¸³Öµ£¬¸Ä±äe2µÄÄÚÈݾ¹È»»áÓ°Ïìe1µÄÄÚÈÝ¡£ÔÒòºÜ¼òµ¥£¬¾ÍÊÇe1ºÍe2ÕâÁ½¸ö¶ÔÏóÒýÓö¼Ö¸ÏòÁ˶ÑÖÐͬһ¸öEmployeeÀà¶ÔÏóµÄ
ÄÚÈÝ¡£Ò²¾ÍÊÇ˵:
JavaµÄ¶ÔÏó¸³ÖµµÄÊÇÒýÓÃ(Ï൱ÓÚCµÄÖ¸Õë)¡£ÈçºÎÈÃe1,e2³ÉΪÄÚÈÝÏàͬµÄÁ½¸öÍêÈ«²»Í¬µÄ¶ÔÏóÄØ£¬Õâ¾ÍÐèÒªÓõ½JavaµÄ¶ÔÏó¿Ë¡»úÖÆ(½«e2¸´ÖÆ
³Ée1µÄÒ»¸ö¶ÀÁ¢¸±±¾)¡£
2¡¢ Java¶ÔcloneµÄÖ§³Ö
(1) ¼Ì³ÐObjectµÄclone·½·¨µÄÒÉÎÊ£¿
ÓÐÒ»µãÎÒÃǺÜÇå³þ£¬JavaµÄÍòÀà֮׿ObjectÖÐÓÐÒ»¸öclone()·½·¨£º
protected
native Object clone() throws CloneNotSupportedException
¼ÈÈ»Õâ¸ö·½·¨ÊÇprotectedµÄ£¬ÏÔÈ»ÊÇΪÁËÈÃ×ÓÀàÄܹ»Ê¹Ó᣿´¿´ÏÂÃæµÄ´úÂ룺
Java´úÂë
//EmployeeÀàÖÐûÓÐclone·½·¨£¬Ò²Ã»ÓÐʵÏÖCloneable½Ó¿Ú
Employee original=new
Employee(
"John Public"
);
Employee copy=original.clone(); //wrong
//EmployeeÀàÖÐûÓÐclone·½·¨£¬Ò²Ã»ÓÐʵÏÖCloneable½Ó¿Ú
Employee original=new Employee("John Public");
Employee copy=original.clone(); //wrong
ÓÐÈË»áÌá³öÕâÑùµÄÒÉÎÊ£º²»ÊÇËùÓеÄÀà¶¼ÊÇObjectµÄ×ÓÀàÂ𣿲»ÊÇËùÓеÄ×ÓÀà¶¼¿ÉÒÔ·ÃÎÊÊܱ£»¤µÄ·½·¨Âð
£¿
ºÁÎÞÒÉÎÊ£¬ÕâÁ½¾äÌáÎÊûÓÐÈκδíÎó¡£µ«ÊÇÓÐÒ»µã±ØÐë¸ãÇå³þ£ºÄãÊÇ·ñ
Ïà¹ØÎĵµ£º
JavaÊÇÒ»ÖÖÃæÏò¶ÔÏóµÄ±à³ÌÓïÑÔ¡£Ëü¾ßÓÐÓëÆ½Ì¨Î޹ء¢ÃæÏò¶ÔÏó¡¢¶¯Ì¬¡¢°²È«µÈÌØµã£¬ÔÊÐíÖ±½ÓʹÓöàÏ̷߳½Ê½½øÐбà³Ì£¬¶Ô³ÌÐò½øÐв¢·¢¿ØÖÆ¡£Java»¹Ö§³Ö·Ö²¼Ê½ÍøÂç²Ù×÷£¬´Ó¶øÄܹ»·½±ãµØ½øÐÐÍøÂçÎļþ¶ÔÏóµÄ´æÈ¡¡£ÀûÓÃJavaÓïÑÔ±¾ÉíÌṩµÄ»æÍ¼¹¦ÄÜ£¬¿ÉÒÔ»æÖÆÒ»Ð©¼òµ¥µÄͼÐΡ£¶ø¶ÔÓÚ¸´ÔÓͼÐΣ¬Ò»°ãÏÈÓûæÍ¼Èí¼þÖÆ³ÉͼÏñ£¬È»ºó²ÉÓÃJa ......
ÔÚÏÖ´úµÄ²Ù×÷ϵͳÖУ¬ÓÐÒ»¸öºÜÖØÒªµÄ¸ÅÄî¨D¨DỊ̈߳¬¼¸ºõËùÓÐĿǰÁ÷ÐеIJÙ×÷ϵͳ¶¼Ö§³ÖỊ̈߳¬Ïß³ÌÀ´Ô´ÓÚ²Ù×÷ϵͳÖнø³ÌµÄ¸ÅÄ½ø³ÌÓÐ×Ô¼ºµÄÐéÄâµØÖ·¿Õ¼äÒÔ¼°ÕýÎĶΡ¢Êý¾Ý¶Î¼°¶ÑÕ»£¬¶øÇÒ¸÷×ÔÕ¼Óв»Í¬µÄϵͳ×ÊÔ´£¨ÀýÈçÎļþ¡¢»·¾³±äÁ¿µÈµÈ£©¡£Óë´Ë²»Í¬£¬Ï̲߳»Äܵ¥¶À´æÔÚ£¬ËüÒÀ¸½ÓÚ½ø³Ì£¬Ö»ÄÜÓɽø³ÌÅÉÉú¡£Èç¹ûÒ»¸ö½ø³ÌÅÉÉú³öÁË ......
Java³ÉÔ±µÄĬÈÏ·ÃÎÊ¿ØÖÆ
ÎÒ¶¥¶ÔÓÚÒ»¸öClassµÄ³ÉÔ±±äÁ¿»ò³ÉÔ±º¯Êý£¬Èç¹û²»ÓÃpublic, protected, privateÖеÄÈκÎÒ»¸öÐÞÊΣ¬ÄÇô¸Ã³ÉÔ±»ñµÃ“ĬÈÏ·ÃÎÊ¿ØÖÆ”¼¶±ð£¬¼´package access £¨°ü·ÃÎÊ£©¡£
ÊôÓÚpackage accessµÄ³ÉÔ±¿ÉÒÔ±»Í¬Ò»¸ö°üÖÐµÄÆäËûÀà·ÃÎÊ£¬µ«²»Äܱ»ÆäËû°üµÄÀà·ÃÎÊ¡£
° ......
£¨´ËÌù½÷Ïò£¬²ËÄñ¼¶JAVA³ÌÐòÔ±Ìṩ±ãÀû£¬ºÇºÇ£¬£¬ÈôÓÐÐÒ¸ßÊÖ³öÏÖ£¬»¹Íû¶à¶àÖ¸µã¡£Ð¡µÜÉõ»¶£¡£©
×î½üæÓÚ¿ª·¢Ò»Ì×¼à¿ØÏµÍ³¡£
ÐèÒª±¨¾¯ÉùÒô¡£
ÔÚѰÇó½â¾ö·½°¸µÄʱºò£¬³öÏÖÁ½ÖÖ·½°¸¡£
Ò»¡¢ÓÃjavax.sound.sampled.*°ü£¬½øÐÐÉùÒô´¦Àí¡£
¶þ¡¢ÓÃsun.audio.AudioPlayer°ü£¬½øÐÐÉùÒô´¦Àí¡£
µÚÒ»ÖÖ·½°¸ÓÃÆðÀ´£¬»á¾³£ÐÔ³öÏÖ¿¨Ö ......