Effective Java ѧϰ±Ê¼Ç£¨£±£©
ͨ³£Çé¿öÏ£¬ÎÒÃÇÔÚдһ¸öÀàʱ£¬Ò»°ã»á¸³ÓèËüÒ»¸ö»ò¼¸¸öpublicµÄ¹¹Ô캯Êý£¬ÈÃÍⲿ³ÌÐòÄܹ»´´½¨¶ÔÏó.¡¡È»¶ø£¬ÔÚeffective¡¡java ÖУ¬´ÓÁíÒ»¸ö½Ç¶È¸æ½ëÎÒÃÇÔÚʹÓÃpublicµÄ¹¹Ô캯Êýǰ£¬ÏÈ¿¼ÂÇÓÃpublic µÄ¾²Ì¬º¯ÊýÀ´´´½¨¶ÔÏó.¡¡
ÆäÓŵãÈçÏ£º
£±.¡¡Ò»¸ö¾²Ì¬µÄ¹¤³§º¯Êý£¬¿ÉÒÔÈ¡²»Í¬µÄÃû×Ö.¡¡¶ø¹¹Ô캯ÊýµÄÃû×ÖÖ»ÄÜÓëÀàͬÃû.¡¡
¡¡¡¡Ò»¸öAPIµÄÉè¼ÆÖУ¬Ò»¸öºÃ¶®µÄÃû×Ö¿ÉÒÔÃâȥʹÓÃÕßÔÚÎĵµÖвéÕÒÆäʹÓ÷½·¨µÄÂé·³.¡¡
¡¡¡¡¡¡È磺¡¡¼ÙÈçÓиöÀà½ÐHuman£¬¼ÙÈçËüÓиö¹¹Ô캯Êý¡¡Human£¨¡¡int sex) ,¸ù¾Ý²ÎÊýÀ´´´½¨²»Í¬µÄ¶ÔÏó.¡¡Óû§¾Í¿ÉÄÜÈ¥²éÎĵµ£¬sex=1 or sex=0 ·Ö±ð´ú±íʲô.¡¡µ«Èç¹ûÎÒÃǸøËü¼ÓÁ½¸ö¾²Ì¬µÄ¹¤³§º¯Êý£¬Human.getMan() ºÍ¡¡Human.getWoman() Óû§Ò»¿´Ãû×Ö¾ÍÖªµÀÊÇÔõôÓÃ.
¡¡¡¡¡¡ÁíÍ⣬ÕýÒòΪ¾²Ì¬¹¤³§º¯Êý¿ÉÒÔÈ¡²»Í¬µÄÃû×Ö£¬¿ÉÒÔÃâÈ¥¹¹Ô캯ÊýÏÞ¶¨²ÎÊýµÄ·³ÄÕ.
¡¡¡¡¡¡Àý×ÓͬÉÏ£¬ÈçÎÒÃÇÒªÓÐÒ»¸ö¸ù¾ÝÉí¸ßÀ´´´½¨Ò»¸öHuman¶ÔÏó£¬ÓÚÊÇÎÒÃÇдÓÐHuman(int height), ºóÀ´£¬ÎÒÃÇÓÖÏë¸ù¾ÝÄê¼ÍÀ´´´½¨Ò»¸ö¶ÔÏó£¬ÓÚÊÇÎÒÃÇÓÖÓÐHuman(int age), ºÜÃ÷ÏÔ£¬ÓÉÓÚº¯ÊýÇ©ÃûµÄÏÞÖÆ£¬ÎÒÃÇÖ»ÄÜÑ¡ÔñÆäÖÐÒ»¸ö¹¹Ô캯Êý.µ«Ê¹Óþ²Ì¬¹¤³§·½·¨¾ÍûÓÐÕâ¸ö·³ÄÕ.¡¡ÎÒÃÇ¿ÉÒÔÓÐHuman.getInstanceByHeight(int height) Ò²¿ÉÒÔÓÐ Human.getInstanceByAge(int age),ËûÃÇ¿ÉÒԺܺÏгµÄÔÚÒ»Æð¹¤×÷.
2. ʹÓþ²Ì¬¹¤³§º¯Êý,²»±ØÏñ¹¹Ô캯ÊýÄÇÑùÿ´Î¶¼´´½¨¶ÔÏó,¿ÉÒÔÔںܴó³Ì¶ÈÉϽÚÔ¼×ÊÔ´,ÌØ±ðÊÇÓÐЩÀà½öÓÐÓÐÏÞ¸öÊýµÄ¶ÔÏóʱ.
Èç ÎÒÃÇÓÐMonthÕâôһ¸öÀà, °´ÕÕÔÀ´µÄ·½·¨,ÎÒÃÇ¿ÉÄÜÓÐMonth(int mon), ÓÚÊÇ,ÿ´Îµ÷ÓÃÒ»¸ö¹¹Ô캯Êý,¾Í»á´´½¨Ò»¸öMonth¶ÔÏó,Æä½á¹ûÊÇÄÚ´æÖкܿÉÄÜ´æÔÚ´óÓÚ12¸öMonth¶ÔÏó. È»¶ø,¼ÙÈç,ÎÒÃÇÊÂÏȶ¨Òå12¸ö¾²Ì¬¶ÔÏó,´ÓJanµ½Dec,È»ºó¸øÒ»¸öMonth.getMonth(int mon)Õâôһ¸ö¾²Ì¬¹¤³§·½·¨, ÔÚº¯ÊýÖиù¾ÝÊý×Ö·µ»ØÆäÖÐÒ»¸ö¾²Ì¬¶ÔÏó,ÕâÑù,²»¹Ü³ÌÐòÔõôÔËÐÐ,ÄÚ´æÖÐʼÖÕÖ»ÓÐ12¸öMonth¶ÔÏó.
ÕâÑù×ö»¹ÓÐÒ»¸öºÃ´¦¾ÍÊÇ, Óû§¿ÉÒÔÖ±½ÓʹÓÃ== ±È½ÏÁ½¸ö¶ÔÏóÊÇ·ñÏàµÈ,¶ø²»ÓÃequal·½·¨.
3. Ò»¸ö¾²Ì¬¹¤³§º¯Êý£¬·µ»ØµÄ¶ÔÏó¿ÉÒÔÊÇÕâ¸öÀàµÄ¶ÔÏó£¬Ò²¿ÉÒÔÊÇÆä×ÓÀàµÄ¶ÔÏó£¬Ôö¼ÓÁËÉè¼ÆµÄÁé»îÐÔ¡£ÔÚʵ¼ÊÔËÓÃÖУ¬¿ÉÒԵõ½¼¸¸öºÃ´¦¡£
ÆäÒ»£¬¿ÉÒÔÒþ²ØÒ»Ð©À࣬¼õÉÙ¶ÔÍ⹫²¼µÄAPIÊý£¬¾«¼ò½Ó¿Ú¡£Õâ¾ä»°¿ÉÒÔÕâÑùÀí½â¡£±ÈÈçÉè¼ÆÒ»¸ö¿ò¼Ü£¬ÀïÃæ°üº¬ÓÐ20¸öÀ࣬µ«Êµ¼ÊÉÏ£¬ÎÒÃÇ¿ÉÒÔͨ¹ýʹÓþ²Ì¬¹¤³§º¯ÊýÒþ²ØÒ»Ð©ÄÚ²¿ÊµÏÖ£¬Ê¹Óû§²»ÓÃÖªµÀÈ«²¿µÄÀ༰ʹÓ÷½·¨£¬Ê¹¿ò¼ÜÒ
Ïà¹ØÎĵµ£º
Èç¹û×Ô¼ºµÄjava projectÖÐÐèÒªÒýÓöîÍâµÄjar°ü×÷Ϊ×ÊÔ´Îļþ£¬ÄÇôÐèÒª×Ô¶¨ÒåÅäÖÃÎļþMANIFEST.MF ,ÀýÈ磺
Manifest-Version: 1.0
Class-Path: lib\crimson.jar lib\jbcl.jar lib\junit.jar lib\log4j-1.2.13.jar lib\mysql-connector-java-3.1.13-bin.jar
Main-Class: src.YourMainClassName
ÆäÖеÄClass-Path¾ÍÖ¸¶¨ÁËÍ ......
ÏßÐÔ±í£¬Á´±í£¬¼¯ºÏ£¬¹þÏ£±íÊdz£ÓõÄÊý¾Ý½á¹¹£¬ÔÚ½øÐÐJava¿ª·¢Ê±£¬JDKÒѾΪÎÒÃÇÌṩÁËһϵÁÐÏàÓ¦µÄÀàÀ´ÊµÏÖ»ù±¾µÄÊý¾Ý½á¹¹¡£ÕâЩÀà¾ùÔÚjava.util°üÖС£
Collection
©ÀList
©¦©ÀLinkedList
©¦©ÀArrayList
©¦©¸Vector
©¦¡¡©¸Stack
©¸Set
Map
©ÀHashtable
©ÀHashMap
©¸WeakHashMap
Ö÷Òª·ÖΪÁ½¸ö·ÖÖ§£º
Collectio ......
×¢£ºwait notify ¶¼ÊÇObjectµÄ·½·¨
ͬ²½£¨×èÈû£© £ºÊÇÒ»ÖÖ·ÀÖ¹¶Ô¹²Ïí×ÊÔ´·ÃÎʵ¼ÖµÄÊý¾Ý²»Ò»ÖµÄÒ»ÖÖģʽ¡£
ÏêϸÇë²Î¿´²Ù×÷ϵͳ¡£
ÔÚJavaÖУ¬ÓÉÓÚ¶Ô¶àÏ̵߳ÄÖ§³Ö£¬¶Ôͬ²½µÄ¿ØÖÆÖ÷Ҫͨ¹ýÒÔϼ¸¸ö·½·¨£¬synchronized£¬ºÍwait(),notify()ºÍnotifyAll(),ÏÂÃæ½øÐÐÒ»Ò»µÄ½²½â£º
A¹Ø¼ü×Ösynchronized
ÿ¸öjava¶Ô ......
1¡¢½«org.vssplugin_1.6.2Îļþ¼Ð¼°Îļþ¼ÐÖеÄÄÚÈÝcopyµ½...\Genuitec\Common\pluginsĿ¼Ï¡£
2¡¢ÔÚĿ¼...\Genuitec\MyEclipse 7.0\configuration\org.eclipse.equinox.simpleconfigurator µÄÎļþbundles.info×îºó¼ÓÒ»ÐÐ
org.vssplugin,1.6.2,file:plugins\org.vssplugin_1.6.2\,4,false
3¡¢ÖØÆôMyEclipse7.0¼´¿É  ......
ѧÉúÔÚѧϰjdbcµÄʱºò£¬»áÎʵ½Ôõôµ÷Óô洢¹ý³Ì£¬ÏÖÔÚ½«javaµ÷ÓÃoracle´æ´¢¹ý³ÌµÄʾÀý×ܽáÈçÏ¡££¨¹ØÓÚµ÷ÓÃsqlserverµÄ´æ´¢¹ý³Ì½«ÔÚÏ´νøÐÐС½áÇë¹Ø×¢£©
Ò»£ºÎÞ·µ»ØÖµµÄ´æ´¢¹ý³Ì
´æ´¢¹ý³ÌΪ£º
• create or replace procedure adddept(deptno number,dname varc ......