Effective java ´úÂëÓÅ»¯ÊµÀý
package chape7;
/**
* 檢²é參數µÄÓÐЧÐÔ
* 當編寫·½·¨»òÕß構ÔìÆ÷時£¬應該¿¼慮ËûµÄ參數ÓÐʲ÷áÏÞÖÆ 應該°É這ЩÏÞÖÆ寫ÔÚÎÄ檔ÖУ¬並ÇÒÔÚ這個·½·¨µÄ開頭處£¬Í¨過顯ʾµÄ檢²é
* 來實Ê©這ЩÏÞÖÆ¡£養³É這樣µÄ習慣ºÜÖØÒª
* 當ÅÐ斷Ò»個數據µÄºÏ·¨ÐÔµÄ時ºò¾ÍÒª拋³ö異³£¡£ 這裡¾ÍÉæ¼°µ½異³£ µÚ¾ÅÕ 60條£º優ÏÈʹÓÃ標準µÄ異³£ ¾ÍÊÇjava×Ô帶µÄ異³£
* 這Ò²ÊÇÒ»種類µÄÖØÓõıí現£»
* ³£ÓõÄÒì³££º
* IllegalArgumentException ·ÇnullµÄ²ÎÊýÊýÖµ²»ÕýÈ·£»´«ÈëµÄ²ÎÊý²»ºÏ·¨£»
* IllegalStateException ¶ÔÓÚ·½·¨µ÷ÓöøÑÔ£¬¶ÔÏó״̬²»ºÏ·¨±ÈÈçÃþ¸ö¶ÔÏóÔÚ±»ÕýÈ·µÄ³õʼ»¯Ö®Ç°¾Íµ÷Óà »áÅ׳öÕâ¸öÒì³£
* NullPointerException ¿ÕÖ¸ÕëÒì³£ ÔÚ½ûÖ¹nullµÄÇé¿öÏÂʹÓÃÁËnullÖµ£»
* IndexOutOfBoundsException ϱê²ÎÊýÔ½½ç
* ConcurrentModificationException µ±·½·¨¼ì²âµ½¶ÔÏóµÄ²¢·¢Ð޸쬵«²»ÔÊÐíÕâÖÖÐÞ¸Äʱ£¬Å׳ö´ËÒì³£¡£
* UnsupportedOperationException µ±²»Ö§³ÖÇëÇóµÄ²Ù×÷ʱ£¬Å׳ö¸ÃÒì³£
* @author lee
*
*/
public class Chape38 {
/**
* @param args
*/
public static void main(String[] args) {
Nuter nu = new Nuter.Builder (200,2).fat(-1).sodium(20).build();
}
}
class Nuter
{
private final int size;
private final int sering;
private final int fat;
private final int sodium;
public static class Builder
{
//ÕâÁ½¸ö²ÎÊýʱ±ØÐëµÄ²ÎÊý
private final int size;
private final int sering;
//ÏÂÃæÊÇ¿ÉÑ¡µÄ²ÎÊý ÉèÖÃÁËĬÈÏÖµ
private int fat = 0;
private int sodium = 0;
public Builder (int size ,int sering)
{
this.sering = sering;
this.size = size;
}
public Builder fat (int val)
{
/**
* ¶ÏÑÔµÄʹÓÃ
* ÔÚ這裡ÅÐ
Ïà¹ØÎĵµ£º
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......
C++ÓëJava»ù±¾Êý¾ÝÀàÐͼ°ËùÕ¼ÓÃÄÚ´æ¿Õ¼ä±È½Ï
----------------C++
----------- ------------Java
----------
(01)bool-------- ......
Éè¼ÆÒ»¸öCircleÀ࣬ÆäÊôÐÔΪԵ㣨ÀàÐÍΪÀàMyPoint£©ºÍ°ë¾¶£¬²¢Îª´ËÀà±àдÒÔÏÂÈý¸ö·½·¨£º
Ò»¡¢¼ÆËãÔ²µÄÃæ»ýµÄcalArea£¨£©·½·¨£»
¶þ¡¢¼ÆËãÖܳ¤µÄcalLength£¨£©·½·¨£»
Èý¡¢boolean inCircle£¨MyPoint mp£©·½·¨£¬¹¦ÄÜÊDzâÊÔ×÷Ϊ²ÎÊýµÄij¸öµãÊÇ·ñÔÚµ±Ç°¶ÔÏóÔ²ÄÚ£¨Ô²ÄÚ£¬°üÀ¨Ô²ÉÏ·µ»Øtrue£¬ÔÚÔ²Íâ·µ»Øfalse£©¡£
³ÌÐò£º
clas ......
¾Í¶àÏß³ÌÀ´Ëµ£¬ÎÒÃÇ¿ªÊ¼ÉèÏëÖ»ÓÐÁ½¸öỊ̈߳¨>2ʱÊDz»ÊÇËãÊýѧ¹éÄÉ·¨£¿£©ÄÇôÈç¹ûÁ½¸ö¶ÀÁ¢µÄÏ̻߳ᷢÉúÊ²Ã´ÄØ£¿
1¡£µ±Ò»¸öÏ߳̽øÈëmoniter£¨Ò²¾ÍÊÇ˵վÓÃÒ»¸öobject£©£¬ÁíÒ»¸öÏß³ÌÖ»Óеȴý»ò·µ»Ø£¬¶øÎÒÃǰѷµ»Ø¾Í³ÆÎªÒ»ÖÖģʽ£¬ÕâÖÖģʽµÄÓ¢ÎÄÊÇBalking¡£
2¡£ÕâÁ½¸öÏ߳̿ÉÒÔÊÇÓÐÐòµÄÖ´ÐУ¬¶ø²»ÊÇÈÃOSÀ´µ÷¶È£¬ÕâʱΠ......
½ñÈÕ¶Áµ½csdnµÄÐÂÎÅ¡¶ÓûΪJava¼¼Êõ´óÅ£ËùÐèµÄ25¸öѧϰҪµã¡·£¬Á˽âÒª×öÒ»¸öJava¼¼Êõ´óÅ£¿É²»ÊÇÒ»°ãÒ»°ãµÄ£¬ÌØÊÕ¼ÔÚ´Ë£ºÒÔ±Þ²ß×Ô¼º²»¶Ïѧϰ£º
1. ÄãÐèÒª¾«Í¨ÃæÏò¶ÔÏó·ÖÎöÓëÉè¼Æ(OOA/OOD)¡¢É漰ģʽ(GOF£¬J2EEDP)ÒÔ¼°×ÛºÏģʽ¡£ÄãÓ¦¸ÃÁ˽âUML£¬ÓÈÆäÊÇclass¡¢object¡¢interactionÒÔ¼°statediagrams¡£
2. ÄãÐèҪѧϰJavaÓïÑÔ ......