ÉîÈëÀí½âjavaµÄclone
ΪÁËÀí½âjavaµÄclone£¬ÓбØÒªÏÈÎÂϰÒÔϵÄ֪ʶ¡£
javaµÄÀàÐÍ£¬javaµÄÀàÐÍ·ÖΪÁ½´óÀ࣬һÀàΪprimitive£¬Èçint£¬ÁíÒ»ÀàΪÒýÓÃÀàÐÍ,ÈçString,ObjectµÈµÈ¡£
javaÒýÓÃÀàÐ͵Ĵ洢£¬javaµÄÒýÓÃÀàÐͶ¼ÊÇ´æ´¢ÔÚ¶ÑÉϵġ£
public class B {
int a;
String b;
public B(int a, String b) {
super();
this.a = a;
this.b = b;
}
}
¶ÔÕâÑùÒ»¸öÒýÓÃÀàÐ͵ÄʵÀý£¬ÎÒÃÇ¿ÉÒÔÍÆ²â£¬ÔÚ¶ÑÉÏËüµÄÄÚ´æ´æ´¢ÐÎʽ£¨³ýÈ¥Ö¸ÏòclassµÄÒýÓã¬ËøµÄ¹ÜÀíµÈµÈÄÚÎñÊÂÎñËùÕ¼Äڴ棩£¬Ó¦¸ÃÓÐÒ»¸öintÖµ±íʾa,ÒÔ¼°Ò»¸öÒýÓ㬸ÃÒýÓÃÖ¸ÏòbÔÚ¶ÑÉϵĴ洢¿Õ¼ä¡£
ΪʲôҪclone
¶÷£¬ÒòΪÐèÒª¡£·Ï»°¡£
ÓÐÃûµÄGoFÉè¼ÆÄ£Ê½ÀïÓÐÒ»¸öģʽΪÔÐÍģʽ£¬ÓÃÔÐÍʵÀýÖ¸¶¨´´½¨¶ÔÏóµÄÖÖÀà,²¢ÇÒͨ¹ý¿½±´ÕâЩÔÐÍ´´½¨ÐµĶÔÏó.
¼òµ¥µÄ˵¾ÍÊÇcloneÒ»¸ö¶ÔÏóʵÀý¡£Ê¹µÃclone³öÀ´µÄcopyºÍÔÓеĶÔÏóһģһÑù¡£
²åÒ»¸ö¼òµ¥Ê¹ÓÃcloneµÄÀý×Ó£¬Èç¹ûÒ»¸ö¶ÔÏóÄÚ²¿Óпɱä¶ÔÏóʵÀýµÄ»°£¬public API²»Ó¦¸ÃÖ±½Ó·µ»Ø¸Ã¶ÔÏóµÄÒýÓã¬ÒÔ·Àµ÷Ó÷½µÄcode¸Ä±ä¸Ã¶ÔÏóµÄÄÚ²¿×´Ì¬¡£Õâ¸öʱºò¿ÉÒÔ·µ»Ø¸Ã¶ÔÏóµÄclone¡£
ÎÊÌâÀ´ÁË£¬Ê²Ã´½ÐһģһÑù¡£
Ò»°ãÀ´Ëµ£¬ÓÐ
x.clone() != x
x.clone().getClass() == x.getClass()
x.clone().equals(x)
µ«ÊÇÕâЩ¶¼²»ÊÇÇ¿ÖÆµÄ¡£
ÎÒÃÇÐèҪʲôÑùµÄclone¾Í¸ã³öʲôÑùµÄcloneºÃÁË¡£
Ò»°ã¶øÑÔ£¬ÎÒÃÇÒªµÄcloneÓ¦¸ÃÊÇÕâÑùµÄ¡£copyºÍÔÐ͵ÄÄÚÈÝÒ»Ñù£¬µ«ÊÇÓÖÊDZ˴˸ôÀëµÄ¡£¼´ÔÚcloneÖ®ºó£¬¸Ä±äÆäÖÐÒ»¸ö²»Ó°ÏìÁíÍâÒ»¸ö¡£
ObjectµÄcloneÒÔ¼°ÎªÊ²Ã´Èç´ËʵÏÖ
ObjectµÄcloneµÄÐÐΪÊÇ×î¼òµ¥µÄ¡£ÒÔ¶ÑÉϵÄÄÚ´æ´æ´¢½âÊ͵ϰ£¨²»¼ÆÄÚÎñÄڴ棩£¬¶ÔÒ»¸ö¶ÔÏóaµÄclone¾ÍÊÇÔÚ¶ÑÉÏ·ÖÅäÒ»¸öºÍaÔÚ¶ÑÉÏËùÕ¼´æ´¢¿Õ¼äÒ»Ñù´óµÄÒ»¿éµØ·½£¬È»ºó°ÑaµÄ¶ÑÉÏÄÚ´æµÄÄÚÈݸ´ÖƵ½Õâ¸öзÖÅäµÄÄÚ´æ¿Õ¼äÉÏ¡£
¿´Àý×Ó¡£
class User {
String name;
int age;
}
class Account implements Cloneable {
User user;
long balance;
@Override
public Object clone() throws CloneNotSupportedException {
return super.clone();
}
}
// user.
User user = new User();
user.name = "user";
user.age = 20;
// account.
Account account = new Account();
account.user = user;
account.balance = 10
Ïà¹ØÎĵµ£º
Javaѧϰ´ÓÈëÃŵ½¾«Í¨
Ò»¡¢ JDK (Java Development Kit)
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......
ʲôÊÇURI
WebÉÏ¿ÉÓõÄÿÖÖ×ÊÔ´ - HTMLÎĵµ¡¢Í¼Ïñ¡¢ÊÓÆµÆ¬¶Î¡¢³ÌÐòµÈ - ÓÉÒ»¸öͨ¹ýͨ
ÓÃ×ÊÔ´±êÖ¾·û£¨Universal Resource Identifier, ¼ò³Æ"URI"£©½øÐж¨Î»¡£
URIÒ»°ãÓÉÈý²¿·Ö×é³É£º
·ÃÎÊ×ÊÔ´µÄÃüÃû»úÖÆ¡£
´æ·Å×ÊÔ´µÄÖ÷»úÃû¡£
×ÊÔ´×ÔÉíµÄÃû³Æ£¬ÓÉ·¾¶±íʾ¡£
¿¼ÂÇÏÂÃæµÄURI£¬Ëü±íʾÁ˵±Ç°µÄHTML ......
String str = "[010101]+[010102]";
String ss = "
System.out.println(ss); // \[010101]
[ ÊÇÌØÊâ×Ö·û£¬
ÐèÒªÓ÷´Ð±¸Ü \[ ¶ÔÆä½øÐÐתÒå
\\[010101]";
String ssss = "
\\ ......
ÎÒ¸Õ´ÓÔÚAntwerpÕÙ¿ªµÄDevoxx
´ó»áÉÏ»ØÀ´£¬»áÉϽéÉÜÁËJava7µÄÐÂÌØÐÔ£¬¶ÔÓ¦µÄJDK½«ÓÚ2010Äê9Ô·¢²¼¡£
ÏÂÃæÊÇ7¸öÒѾÍê³ÉµÄÐÂÌØÐÔ£º
¶ÔcollectionsµÄÓïÑÔ¼¶Ö§³Ö
×Ô¶¯×ÊÔ´¹ÜÀí
¸Ä½ø·ºÐÍÔÚ´´½¨ÊµÀýʱµÄÀàÐÍÒýÓÃ
´øÏ»®ÏßµÄÊý×Ö
ÔÚswitchÖÐʹÓÃString
¶þ½øÖÆÎÄ×Ö
¼ò»¯µÄ¿É±ä²ÎÊý·½·¨µ÷ÓÃ
Java7»¹ÓкܶàÆäËûµÄÐÂÌØÐÔ£¬Î ......
Ê×ÏÈ£¬¶ÔÓÚÎÒÄØ£¬ÊÇ´ÓÊÂ.net CFµÄ¹¤×÷µÄ£¬µ«×Ô´ÓײÉÏÁËhtc heroºó£¬ÎÒ£¬ÉîÉîµÄÃÔÁË£¬µ«ÔÚAndroidÏ¿ª·¢£¬»ù±¾ÊÇÓÃJava¿ª·¢µÄ£¬ºÜÉÙÓÐÓÃcºÍc++£¬³ý·Ç×öµ×²ãÄÇЩ֮ÀàµÄ¡£¶øÎÒ£¬×ÔÓдóѧ¿ÎÌÃÉÏѧÁËÄÄһѧÆÚµÄjava£¬ºÍ×öÏÂСÁ·Ï°£¬»ù±¾ÉÏ£¬¾ÍûÓж¯¹ýjavaÁË£¬µ«´Ó´Ë¿ÌÆð£¬ÎÒÒ ......