Effective Java ѧϰ±Ê¼Ç£¨13£©
Ó°ÏìÄ£¿éÉè¼ÆºÃÓ뻵µÄÒ»¸öÖØÒªÒòËØ¾ÍÊÇÕâ¸öÄ£¿éÊÇ·ñÒþ²ØËüµÄÄÚ²¿Êý¾ÝºÍÆäËûһЩʵÏÖϸ½Ú¡£
ÐÅÏ¢Òþ²ØµÄºÃ´¦£º·½±ã¶ÀÁ¢¿ª·¢£¬²âÊÔ£¬ÓÅ»¯£¬Ê¹Óã¬Àí½âºÍÐ޸ġ£Äܹ»Ìá¸ßϵͳ¿ª·¢ËÙ£¨ÒòΪ¸÷Ä£¿é¿ÉÒÔ²¢Ðпª·¢£©£¬Ò²ÄÜÒ×ÓÚά»¤ºÍµ÷ÊÔ£¬Ò²ÄܼõÉÙϵͳ¹¹½¨µÄ·çÏÕ¡£
ÒªÉè¼ÆÁ¼ºÃµÄÄ£¿é£¬¹æÔòºÜ¼òµ¥£¬¾ÍÒ»¾ä»°£ºÊ¹Ã¿¸öÀà»ò½Ó¿Ú¾¡Á¿²»¿É·ÃÎÊ¡£
1.¶ÔÓÚtop-levelµÄÀàºÍ½Ó¿Ú£¨ÓëÎļþÃûÏàͬµÄÀà»ò½Ó¿Ú£©£¬Ö»ÓÐÁ½ÖÖ·ÃÎÊȨÏÞ£º°ü¿É·ÃÎÊ£¬¹«¹²·ÃÎÊ¡£Èç¹ûÕâ¸öÀà¿ÉÒÔÉèΪ°ü¿É·ÃÎÊ£¬ÄÇËü¾ÍÓ¦¸ÃÊǰü¿É·ÃÎÊ£¬ÕâÑùÔÚ½«À´¾Í¿ÉÒÔÐ޸ģ¬Ìæ»»»òɾ³ýÕâЩÀà¶ø²»Ó°ÏìϵͳµÄÏòÉϼæÈÝÐÔ¡£
2. Èç¹ûÒ»¸ö°ü¿É·ÃÎʵÄÀà»ò½Ó¿ÚÖ»ÊDZ»Ò»¸öÀàʹÓã¬ÄÇô¿ÉÒÔ¿¼ÂǰÑÕâ¸öÀà×÷ΪnestedÀà¡£
ÓÐʱΪÁ˲âÊÔ·½Ã棬ÓпÉÄÜ»áÌá¸ßÀà»ò½Ó¿ÚµÄ¿É·ÃÎÊ£¬ÕâÖÖ·½·¨¿ÉÐУ¬µ«Òª×¢Òâ×î¸ßÖ»ÄÜÌáµ½°ü¿É·ÃÎÊÐÔ£¬¶ø²»ÄÜÒòΪ²âÊԾͰÑÏà¹ØÀ౩¶µ½APIÖС£
×Ö¶ÎÓÀÔ¶²»ÄÜΪ¹«¹²µÄ£¬Èç¹ûÒ»¸ö×Ö¶ÎÊÇnon-final,»òÊÇÆäÖ¸ÏòµÄ¶ÔÏóÊǿɸıäµÄ£¬½«ÆäÉè¼ÆÎª¹«¹²·ÃÎÊ£¬¾ÍʧȥÁË¶ÔÆäÖµ½øÐÐÏÞÖÆµÄÄÜÁ¦¡£Í¬Ñù£¬Ò²²»ÄÜÔÚÆäÖµ±»Ð޸ĵÄʱºò×öһЩ²Ù×÷¡£Òò´Ë£¬ÕâЩҲ²»ÊÇḬ̈߳²È«µÄ¡£
ÒÔÉÏÔÔòͬÑù¶Ô¾²Ì¬º¯ÊýÊÊÓ㬵«¶Ô³£Á¿×Ö¶ÎÀýÍâ¡£
ҪעÒâÒ»µã£¬Èç¹ûÒ»¸ö¹«¹²µÄfinal×Ö¶ÎÖ¸ÏòµÄÊǿɸıäµÄ¶ÔÏó£¬ÄÇô¾Í»áÓÐDZÔڵݲȫ©¶´¡£
ÈçÏ£º
public static final Thing[] VALUES= {...};
ÓÐÁ½ÖÖ½â¾ö·½Ê½£º
Ò»ÖÖÊÇʹÓÃunmodifiableList,
private static final Thing[] PRIVATE_VALUES = { ... };
public static final List<Thing> VALUES =
Collections.unmodifiableList(Arrays.asList(PRIVATE_VALUES));
ÁíÒ»ÖÐÊÇÓÃclone
private static final Thing[] PRIVATE_VALUES = { ... };
public static final Thing[] values() {
return PRIVATE_VALUES.clone();
}
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØÇë±êÃ÷³ö´¦£ºhttp://blog.csdn.net/mutsinghua/archive/2010/02/05/5290877.aspx
Ïà¹ØÎĵµ£º
javaµÃµ½µ±Ç°Ê±¼ä
Java»ù´¡ 2009-06-02 21:34:18 ÔĶÁ1289 ÆÀÂÛ0 ×ֺţº´óÖÐС
//String nowTime=new SimpleDateFormat("yyyyMMddHHmm").format(new java.util.Date());
//System.out.println(nowTime);
import java.text.Sim ......
ÔÚJava ÖÐÊý¾ÝÀàÐ͵Ä×Ô¶¯×ª»»ÀÏÊdzöÏÖһЩÎÊÌâ
byte b1 =1 , b2 = 12; //Äܹ»Í¨¹ý
byte b3 = 128 //±àÒëµÄʱºò²»ÄÜͨ¹ý
ÎÒÃÇÖªµÀJavaÖÐÊý¾ÝÀàÐÍbyte shout char ÔÚ½øÐмÆËãµÄʱºò¶¼ÊÇ» ......
Ò»¡¢
ΪʲôҪʹÓÃ
JSP
ÔÚ¿Í»§¶ËÍøÒ³±à³ÌÖÐ
Java
µÄ½â¾ö·½°¸ÊÇ
Servlet/JSP
¡£¶ÔÓÚ¶¯Ì¬Ò³ÃæµÄÐγÉÎÒÃÇ¿ÉÒÔÀûÓÃÔÚ
Servlet
Öбàд×Ö·û´®ÊµÏÖ£¬µ«ÊÇÕâÑù»áʹ³ÌÐòÔ±µÄ¹¤×÷±äµÃÒì³£µÄ·±Ëö£¬ËùÒÔÎÒÃDzÉÓÃ
JSP
´ïµ½ÍøÒ³µÄ¶¯Ì¬ÏÔʾ¡£
¶þ¡¢
ʲôÊÇ
JSP
JSP
£¨
JavaServerPage
£©ºÍ
Servlet
ÊÇ
Java
ÖвúÉú¶¯Ì ......
CloneÕâ¸ö·½·¨ºÜ¼¦Àߣ¬ÔÒòÊÇÒòΪËüÊÇÊܱ£»¤µÄ(protected)£¬Æä¶þCloneÕâ¸ö·½·¨ÊÇ¿ÉÑ¡µÄ£¬¼´ÓпÉÄÜÀàûÓÐÌṩÕâ¸ö·½·¨¡£
cloneûÓе÷Óù¹Ô캯Êý£¬¶øÇÒÈç¹û¸¸ÀàûÓÐʵÏÖcloneµÄ»°£¬×ÓÀàÓÀÔ¶Ò²²»¿ÉÄÜÕýȷʵÏÖclone.
×ÜÖ®£¬cloneÊǸöºÜÍ·Í´µÄº¯Êý£¬Èç¹ûÒªÕýȷʵÏÖ£¬±ØÐ뿼Âǵ½É±´µÄÇé¿ö£¬·ñÔò±»¿Ë¡³öÀ´µÄ¶ÔÏó¾Í²»ÊǶÀÁ¢µÄ ......
ÓëÆäËüÀ಻ͬ£¬compareTo·½·¨²¢²»ÊÇOjbectÖеķ½·¨£¬ËüÊÇComparable½Ó¿ÚÖÐΨһµÄ·½·¨¡£Í¨¹ýʵÏÖComparable½Ó¿Ú£¬¿ÉÒÔËüÄܹ»×ÔÈ»ÅÅÐò¡£
ÅÅÐò£¬Arrays.sort(a); ¾ÍOKÁË¡£
ÊéÉÏÌáÁËÒ»¸öÇÉÃîµÄ·½·¨£¬ÓÃÀ´Ïû³ýÖØ¸´µÄ×Ö·û´®¡£ËüÓÃÁËÒ»¸öSet¼¯ºÏÀ´¹ýÂËÖØ¸´µÄ×ֶΡ£
public class WordList {
&n ......