Java 5.0¶àÏ̱߳à³Ì
ÀîÌΣ¬SunÖйú¹¤³ÌÑо¿Ôº¹¤³Ìʦ
¸ÅÊö
1£ºÈý¸öмӵĶàḬ̈߳ü
2£ºCallable ºÍ Future½Ó¿Ú
3£ºÐµÄÏß³ÌÖ´Ðмܹ¹
4£ºLockersºÍCondition½Ó¿Ú
5: Synchronizer£ºÍ¬²½×°ÖÃ
6: BlockingQueue½Ó¿Ú
7£ºAtomics Ô×Ó¼¶±äÁ¿
8£ºConcurrent Collections ¹²µã¾Û¼¯
¸ÅÊö£º
Java×Ô1995ÄêÃæÊÀÒÔÀ´µÃµ½Á˹㷺µÃÒ»¸öÔËÓ㬵«ÊǶԶàÏ̱߳à³ÌµÄÖ§³ÖJavaºÜ³¤Ê±¼äһֱͣÁôÔÚ³õ¼¶½×¶Î¡£ÔÚJava 5.0֮ǰJavaÀïµÄ¶àÏ̱߳à³ÌÖ÷ÒªÊÇͨ¹ýThreadÀ࣬Runnable½Ó¿Ú£¬Object¶ÔÏóÖеÄwait()¡¢ notify()¡¢ notifyAll()µÈ·½·¨ºÍsynchronized¹Ø¼ü´ÊÀ´ÊµÏֵġ£ÕâЩ¹¤¾ßËäÈ»ÄÜÔÚ´ó¶àÊýÇé¿öϽâ¾ö¶Ô¹²Ïí×ÊÔ´µÄ¹ÜÀíºÍÏ̼߳äµÄµ÷¶È£¬µ«´æÔÚÒÔϼ¸¸öÎÊÌâ
1. ¹ýÓÚÔʼ£¬ÄÃÀ´¾ÍÄÜÓõŦÄÜÓÐÏÞ£¬¼´Ê¹ÊÇҪʵÏÖ¼òµ¥µÄ¶àÏ̹߳¦ÄÜÒ²ÐèÒª±àд´óÁ¿µÄ´úÂë¡£ÕâЩ¹¤¾ß¾ÍÏñ»ã±àÓïÑÔÒ»ÑùÄÑÒÔѧϰºÍʹÓ㬱ÈÕâ¸üÔã¸âµÄÊÇÉÔÓв»É÷ËüÃÇ»¹¿ÉÄܱ»´íÎóµØÊ¹Ó㬶øÇÒÕâÑùµÄ´íÎóºÜÄѱ»·¢ÏÖ¡£
2. Èç¹ûʹÓò»µ±£¬»áʹ³ÌÐòµÄÔËÐÐЧÂÊ´ó´ó½µµÍ¡£
3. ΪÁËÌá¸ß¿ª·¢Ð§ÂÊ£¬¼ò»¯±à³Ì£¬¿ª·¢ÈËÔ±ÔÚ×öÏîÄ¿µÄʱºòÍùÍùÐèҪдһЩ¹²ÏíµÄ¹¤¾ßÀ´ÊµÏÖһЩÆÕ±éÊÊÓõŦÄÜ¡£µ«ÒòΪûÓй淶£¬ÏàͬµÄ¹¤¾ß»á±»Öظ´µØ¿ª·¢£¬Ôì³É×ÊÔ´ÀË·Ñ¡£
4. ÒòÎªËø¶¨µÄ¹¦ÄÜÊÇͨ¹ýSynchronizedÀ´ÊµÏֵģ¬ÕâÊÇÒ»ÖÖ¿é½á¹¹£¬Ö»ÄܶԴúÂëÖеÄÒ»¶Î´úÂë½øÐÐËø¶¨£¬¶øÇÒËø¶¨Êǵ¥Ò»µÄ¡£ÈçÒÔÏ´úÂëËùʾ£º
synchronized£¨lock£©{
//Ö´ÐжԹ²Ïí×ÊÔ´µÄ²Ù×÷
……
}
һЩ¸´ÔӵŦÄܾͺÜÄѱ»ÊµÏÖ¡£±ÈÈç˵Èç¹û³ÌÐòÐèҪȡµÃlock AºÍlock BÀ´½øÐвÙ×÷1£¬È»ºóÐèҪȡµÃlock C²¢ÇÒÊÍ·Ålock AÀ´½øÐвÙ×÷2£¬Java 5.0֮ǰµÄ¶àÏ߳̿ò¼Ü¾ÍÏÔµÃÎÞÄÜΪÁ¦ÁË¡£
ÒòΪÕâЩÎÊÌ⣬³ÌÐòÔ±¶Ô¾ÉµÄ¿ò¼ÜÒ»Ö±ÆÄÓÐ΢´Ê¡£ÕâÖÖÇé¿öÒ»Ö±µ½Java 5.0²ÅÓнϴóµÄ¸Ä¹Û£¬Ò»ÏµÁеĶàÏ̹߳¤¾ß°ü±»ÄÉÈëÁ˱ê×¼¿âÎļþ¡£ÕâЩ¹¤¾ß°üÀ¨ÁËÒ»¸öеĶàÏ̳߳ÌÐòµÄÖ´Ðпò¼Ü£¬Ê¹±à³ÌÈËÔ±¿É·½±ãµØÐµ÷ºÍµ÷¶ÈÏ̵߳ÄÔËÐУ¬²¢ÇÒмÓÈëÁËһЩ¸ßÐÔÄܵij£ÓõŤ¾ß£¬Ê¹³ÌÐò¸üÈÝÒ×±àд£¬ÔËÐÐЧÂʸü¸ß¡£±¾ÎĽ«·ÖÀಢ½áºÏÀý×ÓÀ´½éÉÜÕâЩмӵĶàÏ̹߳¤¾ß¡£
ÔÚÎÒÃÇ¿ªÊ¼½éÉÜJava 5.0ÀïµÄÐÂConcurrent¹¤¾ßǰÈÃÎÒÃÇÏÈÀ´¿´Ò»ÏÂÒ»¸öÓþɵĶàÏ̹߳¤¾ß±àдµÄ³ÌÐò£¬Õâ¸ö³ÌÐòÀïÓÐÒ»¸öServerỊ̈߳¬ËüÐèÒªÆô¶¯Á½¸öComponent£¬ServerÏß³ÌÐ
Ïà¹ØÎĵµ£º
¾ÙÀý×Ó˵Ã÷Ò»ÇС£
JAVA_HOME£º C:\j2sdk1.4.2_13
Path£º C:\j2sdk1.4.2_13\bin;
Classpath£º.;JAVA_HOME\lib\tools.jar ; JAVA_HOME\lib\dt.jar;
&n ......
import java.awt.*;
import javax.swing.*;
import java.util.Date;
import java.awt.*;
class Time extends JFrame implements Runnable{//ʵÏÖ½Ó¿Ú
Thread clockThread;
JLabel jLabel=new JLabel();
public Time()
{
Container con=this.getContentPane() ......
1¡¢FACTORY£¨¹¤³§Ä£Ê½£©
2¡¢BUILDER£¨½¨Ôìģʽ£©
3¡¢FACTORY METHOD£¨¹¤³§·½·¨Ä£Ê½£©
4¡¢PROTOTYPE£¨ÔʼģÐÍģʽ£©
5¡¢SINGLETON£¨µ¥Àýģʽ£©
6¡¢ADAPTER£¨ÊÊÅäÆ÷ģʽ£©
7¡¢BRIDGE£¨ÇÅÁºÄ£Ê½£©
8¡¢COMPOSITE£¨ºÏ³Éģʽ£©
9¡¢DECORATOR£¨×°ÊÎģʽ£©
10¡¢FACADE£¨ÃÅÃæÄ£Ê½£©
11¡¢FLYWEIGHT£¨ÏíԪģʽ£© ......
package org.bupt.test;
import java.util.ArrayList;
class MyResource {
ArrayList<Integer> arrList= new ArrayList<Integer>();
public MyResource(ArrayList<Integer> arrList) {
this.arrList = arrList;
&nbs ......