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

java²¢·¢±à³Ìʵ¼ù±Ê¼Ç

1, ±£Ö¤Ḭ̈߳²È«µÄÈýÖÖ·½·¨ :
a, ²»Òª¿çÏ̷߳ÃÎʹ²Ïí±äÁ¿
b, ʹ¹²Ïí±äÁ¿ÊÇ finalÀàÐ͵Ä
c, ½«¹²Ïí±äÁ¿µÄ²Ù×÷¼ÓÉÏͬ²½
2, Ò»¿ªÊ¼¾Í½«ÀàÉè¼Æ³ÉḬ̈߳²È«µÄ , ±ÈÔÚºóÆÚÖØÐÂÐÞ¸´Ëü ,¸üÈÝÒ× .
3, ±àд¶àÏ̳߳ÌÐò , Ê×Ïȱ£Ö¤ËüÊÇÕýÈ·µÄ , Æä´ÎÔÙ¿¼ÂÇÐÔÄÜ .
4, ÎÞ״̬»òÖ»¶Á¶ÔÏóÓÀÔ¶ÊÇḬ̈߳²È«µÄ .
5, ²»Òª½«Ò»¸ö¹²Ïí±äÁ¿Âã¶ÔÚ¶àÏ̻߳·¾³Ï (ÎÞͬ²½»ò²»¿É±äÐÔ±£»¤ )
6, ¶àÏ̻߳·¾³ÏµÄÑÓ³Ù¼ÓÔØÐèҪͬ²½µÄ±£»¤ , ÒòΪÑÓ³Ù¼ÓÔØ»áÔì³É¶ÔÏóÖØ¸´ÊµÀý»¯
7, ¶ÔÓÚ volatile ÉùÃ÷µÄÊýÖµÀàÐͱäÁ¿½øÐÐÔËËã , ÍùÍùÊDz»°²È«µÄ (volatile Ö»Äܱ£Ö¤¿É¼ûÐÔ , ²»Äܱ£Ö¤Ô­×ÓÐÔ ).
Ïê¼û volatile Ô­ÀíÓë¼¼ÇÉÖÐ , ÔàÊý¾ÝÎÊÌâÌÖÂÛ .
8, µ±Ò»¸öÏß³ÌÇëÇó»ñµÃËü×Ô¼ºÕ¼ÓеÄËøÊ± ( ͬһ°ÑËøµÄǶÌ×ʹÓà ), ÎÒÃdzƸÃËøÎª¿ÉÖØÈëËø .
ÔÚ jdk1.5 ²¢·¢°üÖÐ , ÌṩÁË¿ÉÖØÈëËøµÄ java ʵÏÖ -ReentrantLock.
9, ÿ¸ö¹²Ïí±äÁ¿ , ¶¼Ó¦¸ÃÓÉÒ»¸öΨһȷ¶¨µÄËø±£»¤ .
´´½¨Óë±äÁ¿ÏàͬÊýÄ¿µÄ ReentrantLock, ʹËûÃǸºÔðÿ¸ö±äÁ¿µÄḬ̈߳²È« .
10,ËäÈ»ËõСͬ²½¿éµÄ·¶Î§ , ¿ÉÒÔÌáÉýϵͳÐÔÄÜ .
µ«ÔÚ±£Ö¤Ô­×ÓÐÔµÄÇé¿öÏ , ²»¿É½«Ô­×Ó²Ù×÷·Ö½â³É¶à¸ö synchronized¿é .
11, ÔÚûÓÐͬ²½µÄÇé¿öÏ , ±àÒëÆ÷Óë´¦ÀíÆ÷ÔËÐÐʱµÄÖ¸ÁîÖ´ÐÐ˳Ðò¿ÉÄÜÍêÈ«³öºõÒâÁÏ .
Ô­ÒòÊÇ , ±àÒëÆ÷»ò´¦ÀíÆ÷ΪÁËÓÅ»¯×ÔÉíÖ´ÐÐЧÂÊ , ¶ø¶ÔÖ¸Áî½øÐÐÁ˵ÄÖØÅÅÐò (reordering).
12, µ±Ò»¸öÏß³ÌÔÚûÓÐͬ²½µÄÇé¿ö϶ÁÈ¡±äÁ¿ , Ëü¿ÉÄÜ»áµÃµ½Ò»¸ö¹ýÆÚÖµ , µ«ÊÇÖÁÉÙËü¿ÉÒÔ¿´µ½ÄǸö
Ïß³ÌÔÚµ±Ê±É趨µÄÒ»¸öÕæÊµÊýÖµ . ¶ø²»ÊÇÆ¾¿Õ¶øÀ´µÄÖµ . ÕâÖÖ°²È«±£Ö¤ , ³ÆÖ®Îª ×îµÍÏ޵ݲȫÐÔ (out-of-thin-air safety)
ÔÚ¿ª·¢²¢·¢Ó¦ÓóÌÐòʱ , ÓÐʱΪÁË´ó·ù¶ÈÌá¸ßϵͳµÄÍÌÍÂÁ¿ÓëÐÔÄÜ , »á²ÉÓÃÕâÖÖÎÞ±£ÕϵÄ×ö·¨ .
µ«ÊÇÕë¶Ô , ÊýÖµµÄÔËËã , ÈÔ¾ÉÊDZ»·ñ¾öµÄ .
13, volatile ±äÁ¿ , Ö»Äܱ£Ö¤¿É¼ûÐÔ , ÎÞ·¨±£Ö¤Ô­×ÓÐÔ .
14, ijЩºÄʱ½Ï³¤µÄÍøÂç²Ù×÷»ò IO, È·±£Ö´ÐÐʱ , ²»ÒªÕ¼ÓÐËø .
15, ·¢²¼ (publish) ¶ÔÏó , Ö¸µÄÊÇʹËüÄܹ»±»µ±Ç°·¶Î§Ö®ÍâµÄ´úÂëËùʹÓà .( ÒýÓô«µÝ )
¶ÔÏóÒݳö (escape), Ö¸µÄÊÇÒ»¸ö¶ÔÏóÔÚÉÐδ׼±¸ºÃʱ½«Ëü·¢²¼ .
Ô­Ôò : Ϊ·ÀÖ¹Òݳö , ¶ÔÏó±ØÐëÒª±»ÍêÈ«¹¹ÔìÍêºó , ²Å¿ÉÒÔ±»·¢²¼ ( ×îºÃµÄ½â¾ö·½Ê½ÊDzÉÓÃͬ²½ )
this ¹Ø¼ü×ÖÒýÓöÔÏóÒݳö
Àý×Ó : ÔÚ¹¹Ô캯ÊýÖÐ , ¿ªÆôÏß³Ì , ²¢½«×ÔÉí¶ÔÏó this ´«ÈëÏß³Ì , Ôì³ÉÒýÓô«µÝ .
¶ø´Ëʱ , ¹¹Ô캯ÊýÉÐδִÐÐÍê , ¾Í»á·¢Éú¶ÔÏóÒݳöÁË .
16, ±ØÒªÊ± , ʹÓà ThreadLocal±äÁ¿È·±£Ï̷߳â


Ïà¹ØÎĵµ£º

JavaỊ̈߳ºÐÂÌØÕ÷ Ëø£¨Ï£©

JavaỊ̈߳ºÐÂÌØÕ÷-Ëø£¨Ï£©
 
ÔÚÉÏÎÄÖÐÌáµ½ÁËLock½Ó¿ÚÒÔ¼°¶ÔÏó£¬Ê¹ÓÃËü£¬ºÜÓÅÑŵĿØÖÆÁ˾ºÕù×ÊÔ´µÄ°²È«·ÃÎÊ£¬µ«ÊÇÕâÖÖËø²»Çø·Ö¶Áд£¬³ÆÕâÖÖËøÎªÆÕÍ¨Ëø¡£ÎªÁËÌá¸ßÐÔÄÜ£¬JavaÌṩÁ˶ÁÐ´Ëø£¬ÔÚ¶ÁµÄµØ·½Ê¹ÓöÁËø£¬ÔÚдµÄµØ·½Ê¹ÓÃÐ´Ëø£¬Áé»î¿ØÖÆ£¬ÔÚÒ»¶¨³Ì¶ÈÉÏÌá¸ßÁ˳ÌÐòµÄÖ´ÐÐЧÂÊ¡£
 
JavaÖжÁÐ´ËøÓиö½Ó¿Újava ......

JavaỊ̈߳ºÐÂÌØÕ÷ Ô­×ÓÁ¿

JavaỊ̈߳ºÐÂÌØÕ÷-Ô­×ÓÁ¿
 
ËùνµÄÔ­×ÓÁ¿¼´²Ù×÷±äÁ¿µÄ²Ù×÷ÊǓԭ×ӵĔ£¬¸Ã²Ù×÷²»¿ÉÔÙ·Ö£¬Òò´ËÊÇḬ̈߳²È«µÄ¡£
 
ΪºÎҪʹÓÃÔ­×Ó±äÁ¿ÄØ£¬Ô­ÒòÊǶà¸öÏ̶߳Ե¥¸ö±äÁ¿²Ù×÷Ò²»áÒýÆðһЩÎÊÌâ¡£ÔÚJava5֮ǰ£¬¿ÉÒÔͨ¹ývolatile¡¢synchronized¹Ø¼ü×ÖÀ´½â¾ö²¢·¢·ÃÎʵݲȫÎÊÌ⣬µ«ÕâÑùÌ«Âé·³¡£
Java5Ö®ºó£¬× ......

JavaÅÅÐò·½·¨´óÈ«

°æÈ¨ÉùÃ÷£º×ªÔØÊ±ÇëÒÔ³¬Á´½ÓÐÎʽ±êÃ÷ÎÄÕÂԭʼ³ö´¦ºÍ×÷ÕßÐÅÏ¢¼°±¾ÉùÃ÷
http://as112255.blogbus.com/logs/38662785.html
package com.softeem.jbs.lesson4;
 
import java.util.Random;
 
/**
 * ÅÅÐò²âÊÔÀà
 *
 * ÅÅÐòËã·¨µÄ·ÖÀàÈçÏ£º
 * 1.²åÈëÅÅÐò£¨Ö±½Ó²åÈëÅÅÐò¡¢ÕÛ°ë²åÈëÅÅÐ ......

JavaÈëÃÅ(6)JavaÊý¾ÝÀàÐÍ

¡¡¡¡6.1 »ù±¾Êý¾ÝÀàÐÍ
¡¡¡¡´«ÊÚÐÂÖª
¡¡¡¡ÔÚJavaÓïÑÔÖУ¬Êý¾ÝÀàÐÍ¿ÉÒÔ·ÖΪÁ½´óÀࣺ
¡¡¡¡1£©»ù±¾ÀàÐÍ£»
¡¡¡¡2£©À©Õ¹ÀàÐÍ¡£
¡¡¡¡ÔÚ±¾Ð¡½ÚÖУ¬ÎÒÃǾÍÒ»ÆðÀ´Ñ§Ï°Ò»ÏÂJavaÓïÑԵĻù±¾Êý¾ÝÀàÐÍ¡£Ëü°üÀ¨£ºboolean¡¢char¡¢byte¡¢int¡¢short¡¢long¡¢float¡¢double°ËÖÖ£º
¡¡¡¡ÀàÐÍ ÃèÊö ȡֵ·¶Î§
¡¡¡¡Boolean ²¼¶ûÐÍ Ö»ÓÐÁ½¸öÖµt ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ