¸ã¶®javaÖеÄsynchronized¹Ø¼ü×Ö
ʵ¼ÊÉÏ£¬ÎÒ¹ØÓÚjavaµÄ»ù´¡ÖªÊ¶µÄ90%ÒÔÉ϶¼À´×ÔThinking in Java¡£¶ÔÓÚÆäÖеÄsynchronized¹Ø¼ü×Ö£¬µ±Ê±¾ÍÊÇä¯ÀÀһϣ¬´ó¸ÅÖªµÀÒâ˼£¬Ò²Ã»ÓÐϸ¿´¡£ºóÀ´Ò»Ö±Ã»ÓÐÓùýÕâ¸ö¹Ø¼ü×Ö¡£×òÌì¿´Thinking in Patterns with JavaÖеÄObserverģʽ£¬¿´ÁËÆäÖеÄObservableÀàµÄÔ´Â룬·¢ÏÖÀïÃæ¼¸ºõËùÓеķ½·¨¶¼ÓÃÁËsynchronized¹Ø¼ü×Ö£¨²»ÊÇÈ«²¿£©£¬ÆäÖиö±ðÓÃÁËsynchronized(this){}µÄÇø¿é¡£ÓÚÊÇ£¬ÎÒ·¢¾õÓбØÒªºÃºÃÀí½âÒ»ÏÂÕâ¸ö¹Ø¼ü×ÖÁË¡£
ÎÒÔٴο´Á˺î½ÝÒëµÄThinking in JavaµÚ¶þ°æÖÐÎİ棬µÃµ½ÓйØsynchronizedµÄÈçÏÂÐÅÏ¢£º
1¡¢synchronized¹Ø¼ü×ÖµÄ×÷ÓÃÓòÓжþÖÖ£º
1£©ÊÇij¸ö¶ÔÏóʵÀýÄÚ£¬synchronized aMethod(){}¿ÉÒÔ·ÀÖ¹¶à¸öÏß³Ìͬʱ·ÃÎÊÕâ¸ö¶ÔÏóµÄsynchronized·½·¨£¨Èç¹ûÒ»¸ö¶ÔÏóÓжà¸ösynchronized·½·¨£¬Ö»ÒªÒ»¸öÏ̷߳ÃÎÊÁËÆäÖеÄÒ»¸ösynchronized·½·¨£¬ÆäËüÏ̲߳»ÄÜͬʱ·ÃÎÊÕâ¸ö¶ÔÏóÖÐÈκÎÒ»¸ösynchronized·½·¨£©¡£Õâʱ£¬²»Í¬µÄ¶ÔÏóʵÀýµÄsynchronized·½·¨ÊDz»Ïà¸ÉÈŵġ£Ò²¾ÍÊÇ˵£¬ÆäËüÏß³ÌÕÕÑù¿ÉÒÔͬʱ·ÃÎÊÏàͬÀàµÄÁíÒ»¸ö¶ÔÏóʵÀýÖеÄsynchronized·½·¨£»
2£©ÊÇij¸öÀàµÄ·¶Î§£¬synchronized static aStaticMethod{}·ÀÖ¹¶à¸öÏß³Ìͬʱ·ÃÎÊÕâ¸öÀàÖеÄsynchronized static ·½·¨¡£Ëü¿ÉÒÔ¶ÔÀàµÄËùÓжÔÏóʵÀýÆð×÷Óá£
2¡¢³ýÁË·½·¨Ç°ÓÃsynchronized¹Ø¼ü×Ö£¬synchronized¹Ø¼ü×Ö»¹¿ÉÒÔÓÃÓÚ·½·¨ÖеÄij¸öÇø¿éÖУ¬±íʾֻ¶ÔÕâ¸öÇø¿éµÄ×ÊԴʵÐл¥³â·ÃÎÊ¡£Ó÷¨ÊÇ: synchronized(this){/*Çø¿é*/}£¬ËüµÄ×÷ÓÃÓòÊǵ±Ç°¶ÔÏó£»
3¡¢synchronized¹Ø¼ü×ÖÊDz»Äܼ̳еģ¬Ò²¾ÍÊÇ˵£¬»ùÀàµÄ·½·¨synchronized f(){} Ôڼ̳ÐÀàÖв¢²»×Ô¶¯ÊÇsynchronized f(){}£¬¶øÊDZä³ÉÁËf(){}¡£¼Ì³ÐÀàÐèÒªÄãÏÔʽµÄÖ¸¶¨ËüµÄij¸ö·½·¨Îªsynchronized·½·¨£»
4¡¢ÒÉÎÊ£º
ÎÒÖªµÀÁËÓÐstaticÇø¿é£¨ÆäÖеļÓÔØÊ±»úºÃÏñÒ²²»Çå³þ£¬ÐèҪѧϰһÏ£¬ÔÀ´¿´Thinking in JavaºÃÏñÊÇ˵: staticÇø¿é¼ÓÔØµÄʱ»úÊÇÀàµÄÒ»¸ö¶ÔÏóʵÀý´´½¨»òÀàµÄÒ»¸östatic·½·¨±»·ÃÎÊ£¬µ«ÊÇÎÒ½ñÌìÔçÉÏ¿´ÁËjavaeye.comÉÏÃæµÄÒ»¸ö¹ØÓÚ“<static¿éµ½µ×ʲôʱºòÖ´ÐУ¿-eway -JavaEye¼¼ÊõÉçÇø>”µÄÎÄÕºóÓÖÓеãÃÔºýÁË£º£©£¬Ò²Ðí£¬ÐèÒªÈÏÕæÑ§Ï°Ò»ÏÂJVMµÄÄÚÔÚ»úÖÆ²ÅÊÇÀí½âÕâÀàÎÊÌâ×î¸ù±¾µÄ;¾¶£©£¬Ò²ÓÐsynchronizedÇø¿é£¬ÄÇô£¬ÓÐsynchronized static Çø¿éÂð£¿Òâ˼ÊÇÎÊ£ºÓÐûÓÐÒ»¸öÀà×÷ÓÃÓòÄÚµÄsynchronizedÇø¿é£¿
½ñÌ죬дÁËÏÂÃæÕâ¸öÀý×ÓÑéÖ¤ÁËÉÏÃæÓÐûÓÐÒ»¸öÀ෶ΧµÄsynchronized »ò synchronized static ¿é£¬½áÂÛÊÇûÓÐÕâÑù
Ïà¹ØÎĵµ£º
×î½ü¸ãÒ»¸öÏîÄ¿ÐèÒª²Ù×÷Excel£¬googleÁËһϣ¬·¢ÏÖÓÐÁ½¸öµÚÈý·½¿ªÔ´Àà¿â£¬·Ö±ðÊÇJexcelºÍPoi¡£´ÖÂԵؿ´ÁËһϣ¬jexcelÄÚÈݲ»ÅӴ󣬾õ×ÅÎÒÖ»ÊÇÓÃһЩ»ù±¾µÄexcel¶Áд¹¦ÄÜ£¬ËüÓ¦¸ÃÄÜÂú×ãÒªÇó¡£ÏÂÃæ¼òÒªµÄ½éÉÜÒ»ÏÂÕâÁ½¸öÀà¿â¡£
jexcel£ºÔÚÓÃjexcelµÄ¹ý³ÌÖз¢ÏÖ¶ÁµÄËÙ ......
package com.fanxing.neibulei;
/**
*
* @author xiaxiaorui
*
*·ºÐÍ ÊÜÏÞ·ºÐÍ
*http://developer.51cto.com/art/200909/153983.htm
*/
class Info2<T>
{
private T var; // ¶¨Òå·ºÐͱäÁ¿
public T getVar() {
return var;
}
public void setVar(T var) {
this.var = var;
}
......
java²»ÔÊÐí¶àÖØ¼Ì³Ð£¬Ò²¾ÍÊÇ˵һ¸ö×ÓÀàÖ»ÄÜÓÐÒ»¸ö¸¸À࣬
Son extends FatherA,FatherB ÊÇ´íÎóµÄ
ΪÁËÃÖ²¹Õâµã²»×㣬javaÔÊÐíʵÏÖ¶à¸ö½Ó¿Ú£¬
½Ó¿Ú¾ÍÊǸø³öһЩûÓÐÄÚÈݵķ½·¨£¬ÀàËÆÓÚC++ÖеÄÐéÀà¡£µ½¾ßÌåÓõÄʱºòÔÙÓÉÓõķ½·¨×Ô¼º¶¨ÒåÄÚÈÝ£¬Òª×¢ÒâµÄÊÇÏëÓýӿڱØÐëʵÏÖ½Ó¿ÚµÄËù
Óз½·¨¡£
ÆäʵÊÇÒòΪjava²» ......
ÀûÓÃPowerShell½Å±¾·½±ãJavaѧϰ
ÎÒÊÇÒ»ÃûJava²ËÄñ£¬ÔÚÕâ¸öÈëÃŽ׶ÎÀïÃâ²»ÁËÒª·´¸´µÄʹÓÃjavac xx.javaºÍjava xxÀ´ÔËÐкͲâÊÔ×Ô¼ºµÄ³ÌÐò¡£·³ÁË……£¬µ«Ò²µÃ±ï×Å¡£
½ñÌìÐÄÇé²»ºÃ£¬»»Á˸öWin7£¨»»¸öϵͳ£¬»»¸öÐÄÇ飩¡£µ±ÎÒÒÀ¾É°´ ......
JavaÊäÈëÊý¾ÝÁ÷
ÔÚJavaÖУ¬ÎÒÃǰÑÄܹ»¶Áȡһ¸ö×Ö½ÚÐòÁеĶÔÏó³Æ×÷Ò»¸öJavaÊäÈëÊý¾ÝÁ÷;¶øÎÒÃǰѹ»Ð´Ò»¸ö×Ö½ÚÐòÁгÆ×÷Ò»¸öÊä³öÁ÷¡£ËüÃÇ·Ö±ðÓɳéÏóÀà InputStreamºÍOutputStreamÀà±íʾ¡£ÒòÎªÃæÏò×Ö½ÚµÄÁ÷²»·½±ãÓÃÀ´´¦Àí´æ´¢ÎªUnicode£¨Ã¿¸ö×Ö·ûʹÓÃÁ½¸ö×Ö½Ú)µÄÐÅÏ¢¡£ËùÒÔJava ÒýÈëÁËÓÃÀ´´¦ÀíUnicode×Ö·ûµÄÀà²ã´Î£¬ÕâЩÀàÅÉÉú× ......