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

Java¿ª·¢ÖжàÏß³Ìͬ²½¼¼ÇÉ

ÔÚ±àдһ¸öÀàʱ£¬Èç¹û¸ÃÀàÖеĴúÂë¿ÉÄÜÔËÐÐÓÚ¶àÏ̻߳·¾³Ï£¬ÄÇô¾ÍÒª¿¼ÂÇͬ²½µÄÎÊÌâ¡£ÔÚJavaÖÐÄÚÖÃÁËÓïÑÔ¼¶µÄͬ²½Ô­Ó£­synchronized£¬ÕâÒ²´ó´ó¼ò»¯ÁËJavaÖжàÏß³Ìͬ²½µÄʹÓá£
 ÎÒÃÇÊ×Ïȱàдһ¸ö·Ç³£¼òµ¥µÄ¶àÏ̵߳ijÌÐò£¬ÊÇÄ£ÄâÒøÐÐÖеĶà¸öÏß³Ìͬʱ¶Ôͬһ¸ö´¢ÐîÕË»§½øÐдæ¿î¡¢È¡¿î²Ù×÷µÄ¡£
¡¡¡¡ÔÚ³ÌÐòÖÐÎÒÃÇʹÓÃÁËÒ»¸ö¼ò»¯°æ±¾µÄAccountÀ࣬´ú±íÁËÒ»¸öÒøÐÐÕË»§µÄÐÅÏ¢¡£ÔÚÖ÷³ÌÐòÖÐÎÒÃÇÊ×ÏÈÉú³ÉÁË1000¸öỊ̈߳¬È»ºóÆô¶¯ËüÃÇ£¬Ã¿Ò»¸öÏ̶߳¼¶ÔJohnµÄÕË»§½øÐдæ100Ôª£¬È»ºóÂíÉÏÓÖÈ¡³ö100Ôª¡£ÕâÑù£¬¶ÔÓÚJohnµÄÕË»§À´Ëµ£¬×îÖÕÕË»§µÄÓà¶îÓ¦¸ÃÊÇ»¹ÊÇ1000Ôª²Å¶Ô¡£È»¶øÔËÐеĽá¹ûÈ´³¬³öÎÒÃǵÄÏëÏñ£¬Ê×ÏÈÀ´¿´¿´ÎÒÃǵÄÑÝʾ´úÂ룺
class Account
{
¡¡String name; float amount;
¡¡public Account(String name, float amount)
¡¡{
¡¡¡¡this.name = name;
¡¡¡¡this.amount = amount;
¡¡}
¡¡
¡¡public void deposit(float amt)
¡¡{
¡¡¡¡float tmp = amount;
¡¡¡¡tmp += amt;
¡¡¡¡try
¡¡¡¡{
¡¡¡¡¡¡Thread.sleep(100);
¡¡¡¡¡¡//Ä£ÄâÆäËü´¦ÀíËùÐèÒªµÄʱ¼ä£¬±ÈÈçË¢ÐÂÊý¾Ý¿âµÈ
¡¡¡¡}
¡¡¡¡catch (InterruptedException e)
¡¡¡¡{
¡¡¡¡¡¡// ignore
¡¡¡¡}
¡¡¡¡amount = tmp;
¡¡}
¡¡public void withdraw(float amt)
¡¡{
¡¡¡¡float tmp = amount;
¡¡¡¡tmp -= amt;
¡¡¡¡try
¡¡¡¡{
¡¡¡¡¡¡Thread.sleep(100);
¡¡¡¡¡¡//Ä£ÄâÆäËü´¦ÀíËùÐèÒªµÄʱ¼ä£¬±ÈÈçË¢ÐÂÊý¾Ý¿âµÈ
¡¡¡¡}
¡¡¡¡catch (InterruptedException e)
¡¡¡¡{
¡¡¡¡¡¡// ignore
¡¡¡¡}
¡¡¡¡amount = tmp;
¡¡}
¡¡public float getBalance()
¡¡{
¡¡¡¡return amount;
¡¡ }
}
public class AccountTest
{
¡¡private static int NUM_OF_THREAD = 1000;
¡¡static Thread[] threads = new Thread[NUM_OF_THREAD];
¡¡public static void main(String[] args)
¡¡{
¡¡¡¡final Account acc = new Account("John", 1000.0f);
¡¡¡¡for (int i = 0; i< NUM_OF_THREAD; i++)
¡¡¡¡{
¡¡¡¡¡¡threads[i] = new Thread(new Runnable()
¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡public void run()
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡acc.deposit(100.0f);
¡¡¡¡¡¡¡¡¡¡acc.withdraw(100.0f);
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡}
¡¡¡¡ );
¡¡¡¡threads[i].start();
¡¡}
¡¡for (int i=0; i<NUM_OF_THREAD; i++)
¡¡{
¡¡¡¡try { threads[i].join();
¡¡¡¡//µÈ´ýËùÓÐÏß³ÌÔËÐнáÊø
¡¡}
¡¡catch (InterruptedEx


Ïà¹ØÎĵµ£º

ÈçºÎÓÃJavaƽ̨·ÃÎÊ¿ªÔ´ÔÆ´æ´¢£¿


ÈçºÎÓÃJavaƽ̨·ÃÎÊ¿ªÔ´ÔÆ´æ´¢£¿
2009Äê10Ô                     ×÷Õߣº¼òÖñ/Òë 
¾¡¹ÜÔÆ¼ÆËãÕâÒ»ÊõÓï²¢²»ÐÂÏÊ(AmazonÔÚ2006Äê¾Í¿ªÊ¼ÌṩËüµÄÔÆ·þÎñ)£¬µ«´Ó2008ÄêÆðËü²Å¿ªÊ¼ÕæÕý³ÉΪÁ÷Ðдʣ¬ÕâÆÚ¼ä£¬GoogleºÍAma ......

Java³ÌÐòÔ±µÄÃÔʧ—ÂÛ¡°ÐéÄâ»ú¡±


Java³ÌÐòÔ±µÄÃÔʧ—ÂÛ“ÐéÄâ»ú”
2009Äê08Ô  ×÷Õߣº¶«·½Ö©ÖëÒë
ÐéÄâ»ú¼¼ÊõÏÖÔڷdz£ÈÈÃÅ£¬ÈËÃÇÈÏΪËü¿ÉÒÔÍê³ÉÒ»ÇÐÊÂÇé¡£ÈËÃÇÈÈÖÔÓÚÈÃJVM¿ÉÒÔÔËÐÐRuby¡¢PHP»òÆäËüһЩÈÈÃÅÓïÑÔ£¬ÒÔ¼°Ö§³ÖÏñJava FXÖ®ÀàµÄ¼¼Êõ¡£ÕâÖÖÏÖÏóÊǺÃÊÇ»µ£¿Joe WinchesterÒÔ×Ô¼ºµÄ¾­ÀúÀ´ÂÛÖ¤Á˶Դ˵Ŀ´·¨¡£
ÔÚJava³öÏÖ֮ǰÎÒ ......

JavaÁ¬½áÊý¾Ý¿âÄÚÄ»

Java.sql°üÖÐµÄ java.sql.Driver, jdbc.sql.ConnectionµÈÌṩ¸ø³ÌÐò¿ª·¢ÈËԱͳһµÄ¿ª·¢½Ó¿Ú£¬Êý¾Ý¿âÌṩÉÌÌṩÏàÓ¦µÄʵÏÖ£¬¶Ô³ÌÐò¿ª·¢ÈËÔ±À´½²Ö»ÒªÖªµÀÕâЩ½Ó¿Ú¶¼ÓÐÄÄЩ·½·¨¾Í¿ÉÒÔÁË¡£µ«ÎÒÃÇ¿ÉÒÔÉîÈëһЩ¿´¿´µ½µ×ÕâÀïÃæ¶¼×öÁËÄÇЩÊ£¬ ͬʱҲ¿ÉÒÔѧϰÆäÖеıà³Ìģʽ(ÈçInterfaceģʽµÈ)¡£
¡¡¡¡1¡¢ Class.forName(String cl ......

Éè¼ÆÄ£Ê½Ö®Factory,Java¹¤³§·½·¨

ÊõÓïÃû³Æ£ºFactory
ÊõÓï½âÊÍ£º¹¤³§Ä£Ê½,ÓÃÀ´Ìṩ´´½¨¶ÔÏóµÄ½Ó¿Ú.
¹¤³§Ä£Ê½¹¦ÄܵÄÏêϸ½âÊÍ£º
¹¤³§Ä£Ê½ÊÇÎÒÃÇ×î³£ÓõÄģʽÁË,ÖøÃûµÄJiveÂÛ̳ ,¾Í´óÁ¿Ê¹ÓÃÁ˹¤³§Ä£Ê½£¬¹¤³§Ä£Ê½ÔÚJava³ÌÐòϵͳ¿ÉÒÔ˵ÊÇËæ´¦¿É¼û¡£
Ϊʲô¹¤³§Ä£Ê½ÊÇÈç´Ë³£Óã¿ÒòΪ¹¤³§Ä£Ê½¾ÍÏ൱ÓÚ´´½¨ÊµÀý¶ÔÏóµÄnew£¬ÎÒÃǾ­³£Òª¸ù¾ÝÀàClassÉú³ÉʵÀý¶ÔÏó ......

Java ¶àÏ̼߳äµÄͨѶ

ÎÊÌâ
ÔÚǰһС½Ú£¬½éÉÜÁËÔÚ¶àÏ̱߳à³ÌÖÐʹÓÃͬ²½»úÖÆµÄÖØÒªÐÔ£¬²¢Ñ§»áÁËÈçºÎʵÏÖͬ²½µÄ·½·¨À´ÕýÈ·µØ·ÃÎʹ²Ïí×ÊÔ´¡£ÕâЩÏß³ÌÖ®¼äµÄ¹ØÏµÊÇÆ½µÈµÄ£¬±Ë´ËÖ®¼ä²¢²»´æÔÚÈκÎÒÀÀµ£¬ËüÃǸ÷×Ô¾ºÕùCPU×ÊÔ´£¬»¥²»ÏàÈ㬲¢ÇÒ»¹ÎÞÌõ¼þµØ×èÖ¹ÆäËûÏ̶߳Թ²Ïí×ÊÔ´µÄÒì²½·ÃÎÊ¡£È»¶ø£¬Ò²ÓкܶàÏÖʵÎÊÌâÒªÇó²»½öҪͬ²½µÄ·ÃÎÊͬһ¹²Ïí×ÊÔ´£¬¶øÇ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ