Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java¶àÏß³Ì,Éú²úÕß,Ïû·ÑÕ߻عË.¼òµ¥µÄÒ»Ìõ½Ö°ü×ÓÆÌ!

Ò»Ìõ½Ö,Óкܶà¼Ò°ü×ÓÆÌ,°ü×ÓÆÌ,¿ªÕŵÄʱºò,¶¼ÒѾ­×öºÃÁË19¸ö°ü×Ó,°ü×ÓÄØ,ÊDZß×ö±ßÂô.×ö1¸ö°ü×Ó,ÊÇÌú¶¨µÄ800ms,¶øÂô³ö1¸ö°ü×Ó²»»á³¬¹ý1s(ÉúÒâºÃ).
 package book.thread;
import java.util.List;
import java.util.Vector;
/**
* °ü×ÓÆÌ
*
* @author Vicky
*
*/
public class WaitNotify2 {
static class Shop implements Runnable {
private boolean isRunning = false;
private String name;
/** ¼Ç¼½ñÌì×öµÄ×ܹ²µÄ°ü×Ó * */
private int count = 0;
/** ×ö°ü×ÓµÄÈÎÎñ * */
private Thread subThread1 = null;
/** Âô°ü×ÓµÄÈÎÎñ * */
private Thread subThread2 = null;
/** °ü×ÓÆÌÖеİü×Ó * */
private List<Integer> baozis = new Vector<Integer>();
public Shop(String name) {
super();
this.name = name;
initShop();
}
/**
* ³õʼ»¯°ü×ÓÆÌ
*/
private void initShop() {
for (int i = 1; i < 20; i++) {
baozis.add(count++);
}
}
/**
* ×ö°ü×Ó,ÿÃë×ö1¸ö°ü×Ó
*/
public void makeBaozi() {
subThread1 = new Thread() {
@Override
public void run() {
while (baozis.size() < 20 && isRunning) {
synchronized (baozis) {
try {
Thread.sleep(800); // 800ºÁÃë²ÅÄÜ×ö1¸ö°ü×Ó
System.out.println("°ü×ÓÆÌ>> " + name + " <<¿ªÊ¼\"×ö\"µÚ[" + ++count + "]¸ö°ü×Ó!");
baozis.add(count);
if (baozis.size() >= 20) {
System.out.println("°ü×ÓÆÌ>> " + name + " <<°ü×ÓÂúÁË,Í£Ö¹×ö°ü×Ó!");
baozis.wait();
} else {
baozis.notifyAll(); // ÓÖ×öÁË1¸ö°ü×Ó,ÓÖ¿ÉÒÔÂô°ü×ÓÁË
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
};
subThread1.start();
}
/**
* ³öÊÛ°ü×Ó,0.5ÃëÂô³öÒ»¸ö°ü×Ó
*/
public void sellBaozi() {
subThread2 = new Thread() {
@Override
public void run() {
while (baozis.size() > 0 && isRunning) {
synchronized (baozis) {
try {
Thread.sleep((long) (M


Ïà¹ØÎĵµ£º

java ¼¯ºÏÀà

¼¯ºÏÀà˵Ã÷¼°Çø±ð
Collection
©ÀList
©¦©ÀLinkedList
©¦©ÀArrayList
©¦©¸Vector
©¦¡¡©¸Stack
©¸Set
Map
©ÀHashtable
©ÀHashMap
©¸WeakHashMap
Collection½Ó¿Ú
¡¡¡¡CollectionÊÇ×î»ù±¾µÄ¼¯ºÏ½Ó¿Ú£¬Ò»¸öCollection´ú±íÒ»×éObject£¬¼´CollectionµÄÔªËØ£¨Elements£©¡£Ò»Ð©
CollectionÔÊÐíÏàͬµÄÔªËØ¶øÁíһЩ²»ÐС ......

¹ØÓÚBooleanÀàÐÍÔÚflexÓëjavaÖм䴫µÝµÄÎÊÌâ

¡¡¡¡×î½üÔÚ¿ª·¢¹ý³ÌÖз¢ÏÖÒ»¸öÎÊÌ⣺BooleanÀàÐ͵ÄÖµÎÞ·¨ÔÚflexºÍjava¼ä´«µÝ£¬¾­¹ýÒ»¶ÎÑо¿·¢ÏÖ£¬ÎÊÌâ³öÏÖÔÚBooleanÀàÐ͵ÄgetterºÍsetter·½·¨ÉÏ¡£
      °´ÕÕjavabeanµÄ¹æ·¶£¬Ð¡²¼¶ûÀàÐ͵ÄgetterÊÇÒÔis×öǰ׺µÄ£¬µ«ÊÇ´ó²¼¶ûÀàÐ͵Ägetter¾Í³ÉÁËÒÔgetΪǰ׺ÁË£¨´ó²¼¶û×÷ΪÒýÓÃÀàÐÍ£¬ÒѾ­±»ÊÓΪÆÕͨ ......

³ÉΪJava¸ßÊÖµÄ25¸öѧϰҪµã

1. ÄãÐèÒª¾«Í¨ÃæÏò¶ÔÏó·ÖÎöÓëÉè¼Æ(OOA/OOD)¡¢É漰ģʽ(GOF£¬J2EEDP)ÒÔ¼°×ÛºÏģʽ¡£ÄãÓ¦¸ÃÁ˽âUML£¬ÓÈÆäÊÇclass¡¢object¡¢interactionÒÔ¼°statediagrams¡£
2. ÄãÐèҪѧϰJavaÓïÑԵĻù´¡ÖªÊ¶ÒÔ¼°ËüµÄºËÐÄÀà¿â(collections¡¢serialization¡¢streams¡¢networking¡¢multithreading¡¢reflection¡¢event¡¢handling¡¢NIO¡¢localiza ......

ÑéÖ¤ÈÕÆÚµÄJavaÕýÔò±í´ïʽ

¿´»ðÁú¹ûдÁËÒ»¸öÑéÖ¤ÈÕÆÚµÄJavaÕýÔò±í´ïʽ£¬¾Í¸ø×ªÁ˹ýÀ´
ÓÉÓÚʹÓõ½ÁË·´ÏòÔ¤ËÑË÷ģʽ“(?<=)”ºÍ“(?<!)”£¬ËùÒÔÕâ¸öÖ»ÄÜÔÚ Java ÖÐʹÓ㬲»ÄÜÔÚ JavaScript ÖÐʹÓã¬JavaScript ²»Ö§³Ö·´ÏòÔ¤ËÑË÷¡£Ö§³Ö yyyy-MM-dd¡¢yyy-MM-dd¡¢yy-MM-dd ºÍ y-MM-dd£¬¼´Äê·ÝΪ 1¡«4 ......

JAVA LIST ±éÀú

¶ÔListµÄ±éÀúÓÐÈýÖÖ·½Ê½  
   
   List<A>    list    =    new    ArrayList<A>();  
   list.add(new    A());  
   list.add(new & ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ