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

javaÉú²úÕßÏû·ÑÕß

ÌâÄ¿£ºÇëÓöàÏß³ÌʵÏÖÒ»¸öÉú²úÕßÀàºÍÒ»¸öÏû·ÑÕßÀ࣬Éú²úÕßËæ»úÉú³É20¸ö×Ö·û£¬Ïû·ÑÕß½«×Ö·û´òÓ¡µ½¿ØÖÆÌ¨¡£
class SyncStack{ //ͬ²½¶ÑÕ»Àà
¡¡¡¡¡¡private int index = 0; //¶ÑÕ»Ö¸Õë³õʼֵΪ0
¡¡¡¡¡¡private char []buffer = new char[6]; //¶ÑÕ»ÓÐ6¸ö×Ö·ûµÄ¿Õ¼ä
¡¡¡¡¡¡public synchronized void push(char c){ //¼ÓÉÏ»¥³âËø
¡¡¡¡¡¡¡¡¡¡while(index = = buffer.length){ //¶ÑÕ»ÒÑÂú£¬²»ÄÜѹջ
¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.wait(); //µÈ´ý£¬Ö±µ½ÓÐÊý¾Ý³öÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡this.notify(); //֪ͨÆäËüḬ̈߳ÑÊý¾Ý³öÕ»
¡¡¡¡¡¡buffer[index] = c; //Êý¾ÝÈëÕ»
¡¡¡¡¡¡index++; //Ö¸ÕëÏòÉÏÒÆ¶¯
¡¡¡¡¡¡}
¡¡¡¡¡¡public synchronized char pop(){ //¼ÓÉÏ»¥³âËø
¡¡¡¡¡¡¡¡¡¡¡¡¡¡while(index ==0){ //¶ÑÕ»ÎÞÊý¾Ý£¬²»ÄܳöÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.wait(); //µÈ´ýÆäËüḬ̈߳ÑÊý¾ÝÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡this.notify(); //֪ͨÆäËüÏß³ÌÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡index- -; //Ö¸ÕëÏòÏÂÒÆ¶¯
¡¡¡¡¡¡¡¡¡¡¡¡¡¡return buffer[index]; //Êý¾Ý³öÕ»
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡class Producer implements Runnable{ //Éú²úÕßÀà
¡¡¡¡¡¡¡¡¡¡¡¡¡¡SyncStack theStack;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//Éú²úÕßÀàÉú³ÉµÄ×Öĸ¶¼±£´æµ½Í¬²½¶ÑÕ»ÖÐ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡public Producer(SyncStack s){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡theStack = s;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡public void run(){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡char c;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for(int i=0; i<20; i++){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡c =(char)(Math.random()*26+'A');
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//Ëæ»ú²úÉú20¸ö×Ö·û
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡theStack.push(c); //°Ñ×Ö·ûÈëÕ»
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System.out.println("Produced: "+c); //´òÓ¡×Ö·û
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Thread.sleep((int)(Math.random()*1000));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡/*ÿ²úÉúÒ»¸ö×Ö·ûÏ߳̾Í˯Ãß*/
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}catch(InterruptedException e){}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡


Ïà¹ØÎĵµ£º

javaÈëÃÅ

 Javaѧϰ´ÓÈëÃŵ½¾«Í¨ 
Ò»¡¢ JDK (Java Development Kit) 
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......

Java NIO APIÏê½â

 
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......

JavaỊ̈߳º´´½¨ÓëÆô¶¯

 
SCJP5ѧϰ±Ê¼Ç
 
Ò»¡¢¶¨ÒåÏß³Ì
 
1¡¢À©Õ¹java.lang.ThreadÀà¡£
 
´ËÀàÖÐÓиörun()·½·¨£¬Ó¦¸Ã×¢ÒâÆäÓ÷¨£º
public void run
()
Èç¹û¸ÃÏß³ÌÊÇʹÓöÀÁ¢µÄ Runnable
ÔËÐжÔÏó¹¹ÔìµÄ£¬Ôòµ÷Óøà Runnable
¶ÔÏóµÄ run
·½·¨£»·ñÔò£¬¸Ã·½·¨²»Ö´ÐÐÈκβÙ×÷²¢·µ»Ø¡£
 
Thread
µÄ×ÓÀàÓ¦ ......

JavaÍøÂç±à³Ì1

       InetAddressÀà´ú±íIPµØÖ·£¬ÓÐÁ½¸ö×ÓÀ࣬Inet4Address£¬Inet6Address´ú±íIPV4ºÍIPv6£¬Ã»Óй¹Ôì·½·¨£¬µ«ÊÇÌṩ¸öÁËÁ½¸ö¾²Ì¬·½·¨À´»ñÈ¡InetAddressʵÀý£ºgetByName(String host):¸ù¾ÝÖð¾ä»ñÈ¡¶ÔÓ¦µÄInetAddress¶ÔÏó£»getByAddress(byte[]addr):¸ù¾ÝԭʼIPµØÖ·À´»ñÈ¡¶ÔÓ¦µÄInetAddress¶ÔÏ ......

JAVAѧϰ֮·

 ¡¡ ¡¡¡¡
¡¡¡¡Èí¼þ¿ª·¢Ö®Â·ÊdzäÂú¾£¼¬ÓëÌôս֮·,Ò²ÊdzäÂúÏ£Íû֮·¡£JAVAѧϰҲÊÇÈç´Ë£¬Ã»Óнݾ¶¿É×ß¡£ÃÎÏëÏñ¡¶ÌìÁú°Ë²¿¡·ÖÐÐéÖñÒ»Ñù±»ÎÞÑÂ×Óõ®õ­¹à¶¥¶øÇáËÉ»ñµÃÒ»¼××Ó¹¦Á¦£¬ÊǺܲ»ÏÖʵµÄ¡£Ã¿ÌìÑöÌì´ó½Ð"ÌìÉñ°¡£¬Çë´Í¸øÎÒÒ»±¾¿û»¨±¦µä°É"£¬Êâ²»Öª¼´Ê¹Äã»ñµÃÁË¿û»¨±¦µä£¬³ýÁËÊÜ×Ô¹¬ÆäÉíÖ®¿àÍ⣬ÄãÒ²²»Ò»¶¨³ÉµÃÁË"¶«·½² ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ