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

[ÒëÎÄ]һЩJava²¢·¢¼¼ÇÉ

Ô­ÎÄ£ºSome Java Concurrency Tips
×÷ÕߣºCarol McDonald
³ö´¦£º
http://weblogs.java.net/blog/caroljmcdonald/archive/2009/09/17/some-java-concurrency-tips
 
ÕâÊÇÀ´×ÔJoshua Bloch¡¢Brian GoetzºÍÆäËûÈ˵ÄÒ»¸ö¹ØÓÚһЩ²¢·¢¼¼ÇɵĻã×Ü¡£
 
Ê×ÏÈÑ¡Ôñ²»¿É±äµÄ¶ÔÏó/Êý¾Ý
 
²»¿É±ä¶ÔÏó£¨immutable object£©ÔÚ¹¹½¨Ö®ºó¾Í²»»á¸Ä±äÁË£¬²»¿É±ä¶ÔÏó¸ü¼òµ¥¡¢°²È«£¬²»ÐèÒªËø£¬²¢ÇÒÊÇḬ̈߳²È«µÄ¡£ÎªÁËʹµÃ²»¿É±ä¶ÔÏóÎÞÐèÌṩsetter/mutator·½·¨£¬°ÑÓòÐÞÊγÉprivate finalµÄ£¬²¢¿É·ÀÖ¹Æä×ÓÀà±ð»¯¡£Èç¹û²»¿ÉÑ¡Ôñ²»±äÐÔ£¬ÄÇôÏÞÖÆ¿É±äµÄ״̬£¬Ô½ÉٵĿɱä״̬Òâζ×ÅÔ½ÉÙµÄЭµ÷ÅäºÏ¡£ÔÚÈκÎʵ¼Ê¿ÉÐеÄÇé¿öϰÑÓòÉùÃ÷³ÉfinalµÄ£¬finalÓò±È¿É±äÓòÒª¼òµ¥µÃ¶à¡£
ÔÚÏ̹߳²Ïí¿É±äÊý¾ÝµÄʱºò£¬Ã¿¸ö¶ÁÏ̻߳òÕßдÏ̶߳¼±ØÐëҪЭµ÷¶ÔÊý¾ÝµÄ·ÃÎÊ£¬Î´ÄÜͬ²½¹²ÏíµÄ¿É±äÊý¾Ý¿ÉÄܻᵼÖÂÔ­×ÓÐÔµÄʧ°Ü¡¢¾ºÕùÌõ¼þ¡¢²»Ò»ÖµÄ״̬£¬ÒÔ¼°ÆäËûÐÎʽµÄ·ÇÈ·¶¨ÐÔ¡£ÕâЩ²»È·¶¨µÄÎÊÌâ¶¼ÊÇ×îÄÑÒÔµ÷ÊԵġ£
ʹ²¢·¢½»»¥Ö»ÔÚÃ÷È·¶¨ÒåµÄµØ·½·¢Éú£¬¼õÉÙ¹²ÏíÊý¾Ý£¬¿¼ÂǸ´Öƶø²»Êǹ²Ïí¡£
 
WebÓ¦ÓõÄÏ̷߳çÏÕ
 
Ò»¸öServletµÄget¡¢post¡¢service·½·¨Äܹ»Í¬Ê±±»¶à¸ö¿Í»§¶Ëµ÷Ó㬶àÏß³ÌServletʵÀýºÍ¾²Ì¬±äÁ¿Êǹ²ÏíµÄ£¬Òò´ËÈç¹ûÊǿɱäµÄ»°£¬ÄÇô·ÃÎʱØÐë¼ÓÒÔЭµ÷¡£ServletÊǵäÐ͵ÄÉúÃüÆÚ³¤ÇÒ±»Ïß³Ì¸ßÆµ¶È¼ÓÔØµÄ¶ÔÏó£¬Èç¹û¹ý·Öͬ²½µÄ»°ÐÔÄÜ»áÊÜÓ°Ï죬»òÕß¾¡Á¿¹²Ïí²»¿É±ä£¨final£©Êý¾Ý£¬»òÕß³¢ÊÔÍêÈ«²»¹²Ïí£¬ÇëÇó²ÎÊýºÍ¾Ö²¿±äÁ¿»á¸ü°²È«¡£
 
±£³ÖËø¶¨µÄʱ¼ä¾¡¿ÉÄܵĶÌ
 
ÔÚͬ²½ÇøÄÚÍê³É¾¡¿ÉÄÜÉٵŤ×÷£¬°Ñ²»ÐèÒª¼ÓËøµÄ´úÂë·Åµ½Í¬²½´úÂë¿éÖ®Íâ£¬ÌØ±ðÊÇÈç¹ûÕâЩ´úÂë·Ç³£ºÄʱµÄ»°£¡
 
 
 
 
Lock½Ó¿Ú±ÈʹÓÃͬ²½´úÂë¿éÌṩÁ˸üÏ꾡µÄËø¶¨²Ù×÷£¬ÆäÓÐÒ»¸öºÃ´¦ÊÇÈç¹ûËøÊDz»¿ÉÓõϰ£¬Ôò²»»áµ¼ÖÂ×èÈû¡£ÄãÓ¦¸ÃÖ»ÓÐÔÚÐèÒªµÄʱºò²Å»ñÈ¡ËøÀ´¶ÁÈ¡»òÕßдÈë¹²ÏíµÄÊý¾Ý£¬²¢ÔÚÒ»¸öfinally×Ó¾äÄÚ²¿½âËø£¬ÒÔÈ·±£Ëø±»ÊÍ·Å¡£ÏÂÃæÊÇÒ»¸öʹÓÃReentrantReadWriteLockµÄÀý×Ó£º
 
 
 
 
 
 
Ò»ÖÖ¼õÉÙ±£³ÖËø¶¨µÄʱ¼äµÄ×ö·¨ÊÇËø·Ö²ð»òÕßËø·ÖÀ룬¸Ã·½·¨ÊÇΪ¸÷¸ö״̬±äÁ¿Ê¹Óò»Í¬µÄËø¶ø²»ÊÇʹÓõ¥¸öËø£¬Õâ¼õСÁËËøµÄÁ£¶È£¬ÌṩÁ˸üºÃµÄ¿ÉÉìËõÐÔ£¬µ«±ØÐëÒª°´ÕÕ¹æÔò˳ÐòÀ´È¡ÓÃËø£¬·ñÔò»áÓÐËÀËøµÄΣÏÕ¡£
 
Ê×ÏÈÑ¡ÔñexecutorºÍtask¶ø²»ÊÇthread
 
ʹÓÃJava²¢·¢¹¤¾ßExecutor¿ò¼Ü£¨Java Concurrency Utiliti


Ïà¹ØÎĵµ£º

JavaÀà³õʼ»¯Ë³Ðò

 
[ÒýÑÔ]
±¾ÎÄÖ÷Òª×ܽáÁËjavaÀàµÄlifetime¡£°üÀ¨´ÓÀàµÄ¼ÓÔØ£¬link£¬initialize£¬ÒÔÖÁ¶ÔÏóµÄʵÀý»¯ºÍÏú»Ù¡£²¢½áºÏjvm¹æ·¶£¬ÂÔ×÷½âÊÍ¡£
1.²âÊÔÓóÌÐò£º
 
2.³ÌÐòÊä³ö£º
 
[ÕýÎÄ]
Java¶ÔÏóµÄ´ÓÎÞµ½ÓÐÒª¾­¹ýÀàµÄ¼ÓÔØ£¬Á´½Ó£¬³õʼ»¯ºÍ¶ÔÏóµÄʵÀý»¯Õ⼸¸ö¹ý³Ì¡£´Ó×ÜÌåÀ´ËµÀàµÄÉúÃüÖÜÆÚ´óÖ½«Æä·ÖΪÈý¸öpha ......

javaÈëÃÅʵÀý classpathÓëpath ÉèÖÃ

JavaºÜÓÕÈË£¬µ«¶ÔÓÚ¸Õ¿çÈëJavaÃż÷µÄ³õѧÕßÀ´Ëµ£¬±àÒë²¢ÔËÐÐÒ»¸öÎޱȼòµ¥µÄJava³ÌÐò¼òÖ±¾ÍÊÇÒ»¸ö¶ñÃΡ£Ã÷Ã÷³ÌÐòû´í£¬µ«¸÷ÖÖ¸÷ÑùÈÃÈËÃþ²»×ÅÍ·ÄԵĴíÎóÐÅÏ¢ÕæµÄÈÃÄã°Ù˼²»µÃÆä½â£¬Ðí¶àÔÚJavaÃÅ¿ÚÅÇ»²Á˺ܾõijõѧÕß¾ÍÕâÑù·ÅÆúÁËѧϰJavaµÄ»ú»á£¬ºÜÊÇ¿Éϧ¡£±ÊÕßÒ²¾­Àú¹ýÕâ¸öÎÞ±ÈÍ´¿àµÄ½×¶Î£¬¸Ð¾õµ½±àÒëÄѵÄÎÊÌâ¾Í³öÔÚclasspat ......

Axis2 java WebServices¿ª·¢ÈýPOJO

»·¾³JDK1.5
Eclipse 3.2
Ö±½ÓÉÏ´úÂ룺Èç¹ûûÓÐÅäÖúû·¾³Çë²Î¿´Ç°Á½ÆªÈÕÖ¾
·þÎñÆ÷¶Ë´úÂë
UserÀࣺ
/*
*Class User.java
*Create Date: 2009-11-4
*Author:a276202460
*/
package com.axis.pojo.test;
public class User implements java.io.Serializable{
public boolean equals(Object obj) {
if (obj == ......

JavaµÄdz¿½±´ºÍÉ±´(1)

 JavaµÄ¿½±´·ÖΪÉ±´ºÍdz¿½±´
dz¿½±´£º°ÑÒ»¸ö¶ÔÏóÖÐËùÓеķÇstatic³ÉÔ±±äÁ¿(°üÀ¨¶ÔÆäËü¶ÔÏóµÄÒýÓã¬javaÖеÄÒýÓÃÏ൱ÓÚC/C++ÖеÄÖ¸Õë±äÁ¿)¶¼¿½±´Ò»±é£¬¶ø²»¿½±´ÒýÓÃËùÖ¸ÏòµÄ¶ÔÏó
É±´£º°ÑÒ»¸ö¶ÔÏóÖÐËùÓеķÇstatic³ÉÔ±±äÁ¿(°üÀ¨¶ÔÆäËü¶ÔÏóµÄÒýÓÃ)¶¼¿½±´Ò»±é£¬ÒýÓÃËùÖ¸ÏòµÄ¶ÔÏóÒ²¿½±´Ò»·Ý
ÕâÆªÎÄÕÂÏȽ²Êödz¿½±´£ ......

javaÖÐÈçºÎ°ÑÒ»¸öĿ¼ÏµÄÎļþÒÆµ½ÁíÒ»¸öÖ¸¶¨Ä¿Â¼ÖÐ

 import java.io.*;
public class FileToFile
{
 public static void main(String[] args)
 {
   File fold = new File("e:\\java\\file.java");//ij·¾¶ÏµÄÎļþ
   String strNewPath = "e:\\java\\new file\\";//з¾¶
   File fnewpath = new File(strNewPath); ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ