java²¢·¢±à³Ì Executor¿ò¼Ü1
Executor¿ò¼ÜÊÇÖ¸java 5ÖÐÒýÈëµÄһϵÁв¢·¢¿âÖÐÓëexecutorÏà¹ØµÄһЩ¹¦ÄÜÀ࣬ÆäÖаüÀ¨Ï̳߳أ¬Executor£¬Executors£¬ExecutorService£¬CompletionService£¬Future£¬CallableµÈ¡£ËûÃǵĹØÏµÎª£º
²¢·¢±à³ÌµÄÒ»ÖÖ±à³Ì·½Ê½ÊǰÑÈÎÎñ²ð·ÖΪһЩÁеÄСÈÎÎñ£¬¼´Runnable£¬È»ºóÔÚÌá½»¸øÒ»¸öExecutorÖ´ÐУ¬Executor.execute(Runnalbe) ¡£ExecutorÔÚÖ´ÐÐʱʹÓÃÄÚ²¿µÄÏ̳߳ØÍê³É²Ù×÷¡£
Ò»¡¢´´½¨Ï̳߳Ø
ExecutorsÀ࣬ÌṩÁËһϵÁй¤³§·½·¨ÓÃÓÚ´´ÏÈÏ̳߳أ¬·µ»ØµÄÏ̳߳ض¼ÊµÏÖÁËExecutorService½Ó¿Ú¡£
public static ExecutorService newFixedThreadPool(int nThreads)
´´½¨¹Ì¶¨ÊýÄ¿Ï̵߳ÄÏ̳߳ء£
public static ExecutorService newCachedThreadPool()
´´½¨Ò»¸ö¿É»º´æµÄÏ̳߳أ¬µ÷ÓÃexecute ½«ÖØÓÃÒÔǰ¹¹ÔìµÄỊ̈߳¨Èç¹ûÏ߳̿ÉÓã©¡£Èç¹ûÏÖÓÐÏß³ÌûÓпÉÓõģ¬Ôò´´½¨Ò»¸öÐÂÏ̲߳¢Ìí¼Óµ½³ØÖС£ÖÕÖ¹²¢´Ó»º´æÖÐÒÆ³ýÄÇЩÒÑÓÐ 60 ÃëÖÓδ±»Ê¹ÓõÄÏ̡߳£
public static ExecutorService newSingleThreadExecutor()
´´½¨Ò»¸öµ¥Ï̻߳¯µÄExecutor¡£
public static ScheduledExecutorService newScheduledThreadPool(int corePoolSize)
´´½¨Ò»¸öÖ§³Ö¶¨Ê±¼°ÖÜÆÚÐÔµÄÈÎÎñÖ´ÐеÄÏ̳߳أ¬¶àÊýÇé¿öÏ¿ÉÓÃÀ´Ìæ´úTimerÀà¡£
Java´úÂë
Executor executor = Executors.newFixedThreadPool(10);
Runnable task = new Runnable() {
@Override
public void run() {
System.out.println("task over");
}
};
executor.execute(task);
executor = Executors.newScheduledThreadPool(10);
ScheduledExecutorService scheduler = (ScheduledExecutorService) executor;
scheduler.scheduleAtFixedRate(task, 10, 10, TimeUnit.SECONDS);
Executor executor = Executors.newFixedThreadPool(10);
Runnable task = new Runnable() {
@Override
public void run() {
System.out.println("task over");
}
};
executor.execute(task);
executor = Executors.newScheduledThreadPool(10);
ScheduledExecutorService scheduler = (ScheduledExecutorS
Ïà¹ØÎĵµ£º
Finalizer ²»¿É¼Æ»®µÄ,Ò²ÊÇΣÏÕµÄ,Ò»°ãÒ²ÊDz»±ØÒªµÄ.
²»ÄÜÔÚfinalizerÖзÅÈκÎÓëÒÀÀµÊ±¼äÏà¹ØµÄ²Ù×÷,ÒòΪÄã²»ÖªµÀËüʲôʱºò±»Ö´ÐÐ. ±ÈÈçÔÚfinalizerÖйرÕÎļþµÄ×ö·¨¾ÍÊÇ´íÎóµÄ, ¸ù¾ÝJVMµÄʵÏÖ·½Ê½²»Í¬,ÓпÉÄܵ¼Ö´ò¿ªµÄÎļþÊý¹ý¶à¶øÎÞ·¨ÔÙ´ò¿ªÎļþ.
Ò²²»ÄÜÔÚfinalizerÖиıä״̬,Èç¸øÊý¾Ý¿â½âËøµÈ.
finalizer»¹ÄÜ´øÀ´Ñ ......
javaÖеÄËÄÖÖÀàÐ͵ļ¯ºÏÀà
£¨1£©Vector £¨2£©BitSet£¨3£©Stack£¨4£©HashTable
2ö¾ÙÆ÷
ÔÚÈκμ¯ºÏÀàÖУ¬±ØÐëͨ¹ýijÖÖ·½·¨ÔÚÆäÖÐÖÃÈë¶ÔÏó£¬ÔÙÓÃÁíÒ»ÖÖ·½·¨´ÓÖÐÈ¡µÃ¶ÔÏó¡£ÔÚVectorÖУ¬addElement()¾ÍÊÇÎÒÃDzåÈë¶ÔÏó²ÉÓõķ½·¨
£¬¶þelementAt()ÔòÊÇÌáÈ¡¶ÔÏóµÄΨһ·½·¨¡£
Iterator¿ÉÒÔ´ïµ½Õâ¸öÄ¿µÄ£¬ËüÊÇÒ»¸ö¶ÔÏó£¬×÷ÓÃÊDZ ......
¶¨ÒåÔÚÒ»¸öÀàÄÚ²¿µÄÀà½ÐÄÚ²¿À࣬°üº¬ÄÚ²¿ÀàµÄÀà³ÆÎªÍⲿÀà¡£ÄÚ²¿Àà¿ÉÒÔÉùÃ÷public¡¢protected¡¢privateµÈ·ÃÎÊÏÞÖÆ£¬¿ÉÒÔÉùÃ÷ΪabstractµÄ¹©ÆäËûÄÚ²¿Àà»òÍⲿÀà¼Ì³ÐÓëÀ©Õ¹£¬»òÕßÉùÃ÷Ϊstatic¡¢finalµÄ£¬Ò²¿ÉÒÔʵÏÖÌØ¶¨µÄ½Ó¿Ú¡£staticµÄÄÚ²¿ÀàÐÐΪÉÏÏóÒ»¸ö¶ÀÁ¢µÄÀ࣬·ÇstaticÔÚÐÐΪÉÏÀàËÆÀàµÄÊôÐÔ»ò·½·¨ÇÒ½ûÖ¹ÉùÃ÷staticµÄ·½· ......
JavaµÚÈý·½library ecosystemÊÇÒ»¸öºÜ¹ãÀ«µÄ·¶³ë¡£²»¾ÃǰÓÐÈË׫ÎÄ£ºÃ¿¸öÏîÄ¿ÖУ¬Äã±ØÐëÖªµÀµÄ11¸öJavaµÚÈý·½Àà¿â¡£
µ¥Ôª²âÊÔ
1.DBUnit
DBunitÊÇÒ»¸ö»ùÓÚjunitÀ©Õ¹µÄÊý¾Ý¿â²âÊÔ¿ò¼Ü¡£ËüÌṩÁË´óÁ¿µÄÀà¶ÔÓëÊý¾Ý¿âÏà¹ØµÄ²Ù×÷½øÐÐÁ˳éÏóºÍ·â×°¡£
2.MOckito
MockitoÊÇÒ»¸öÕë¶ÔJavaµÄmocking¿ò¼Ü¡£Äã¿ÉÒÔʹÓüò½àµÄAPI±àд ......