Java¶àÏß³ÌÖ®ThreadLocal_1
ThreadLocalµÄºËÐÄ˼ÏëºÜ¼òµ¥£ºÎªÃ¿¸ö¶ÀÁ¢µÄÏß³ÌÌṩһ¸ö±äÁ¿µÄ¸±±¾¡£
ThreadLocalÔòʹÓÃÁË“¿½±´¸±±¾”µÄ·½Ê½£¬ÈËÈËÓзݣ¬ÄãÓÃÄãµÄ£¬ÎÒÓÃÎҵģ¬´ó¼Ò»¥²»Ó°Ï죬ÊÇ“ÒԿռ任ʱ¼ä”¡£Ã¿¸öÏß³ÌÐ޸ıäÁ¿Ê±£¬Êµ¼ÊÉÏÐ޸ĵÄÊDZäÁ¿µÄ¸±±¾£¬²»ÅÂÓ°Ïìµ½ÆäËüÏ̡߳£
ΪÁ˼ÓÉî¶ÔThreadLocalµÄÀí½â£¬ÏÂÃæÎÒʹÓÃÒ»¸öÀý×ÓÀ´ÑÝʾThreadLocalÈçºÎ¸ôÀëÏ̼߳äµÄ±äÁ¿·ÃÎʺÍÐ޸ģº
¡¾1¡¿SerialNumÀà
package example.thread.threadLocal;
public class SerialNum {
private static int nextSerialNum = 1;
@SuppressWarnings("unchecked")
private static ThreadLocal serialNum = new ThreadLocal() {
protected synchronized Object initialValue() {
return new Integer(nextSerialNum++);
}
};
public static int get() {
return ((Integer) (serialNum.get())).intValue();
}
@SuppressWarnings("unchecked")
public static void set(Integer newSerial){
serialNum.set(newSerial);
}
}
¡¾2¡¿GetSerialNumThread package example.thread.threadLocal;
À´Ô´£ºÊÕ¼¯ÕûÀíÓÚ»¥ÁªÍø
Ïà¹ØÎĵµ£º
×î½üÏëʵÏÖÒ»¸öÔÚ×Ô¼ºÊÖ»úÉϲéѯºº×ÖÆ´ÒôµÄ³ÌÐò£¬ÒѾ½øÐÐÁË´ó¸Å20ÌìÁË°É¡£µ«ÊÇÉÏÖܵÄʱºòÔÚNetbeans 6.8ÖÐÔËÐгÌÐò£¬ÔÚÊä³öÖÐÏÔʾµÄÊÇ“Starting emulator in execution mode”£¬Ä£ÄâÆ÷È´Æô¶¯²»ÆðÀ´¡£È¥²é¿´°²×°µÄJavaƽ̨£¬ÏÔʾÓÐ Java ME£¬³¢ÊÔ°ÑËüɾ³ýºó£¬»µÁË£¬ÔõÁËÒ²ÎÞ·¨ÔÙ´ÎÌí¼Ó£¬Ã÷Ã÷Ö¸¶¨ÁËĿ¼£¬È´ÌáÊ¾Õ ......
ÔÚʵÏÖsingletonģʽʱ£¬ÎÒÃÇÓÐÒÔϼ¸ÖÖ·½·¨¡£
1. public static final ×ֶμÓÉÏprivate µÄ¹¹Ô캯Êý¡£
public class Singleton{
public static final Singleton INSTANCE = new Singleton();
& ......
Õâ¸öÔÔòºÜ¼òµ¥£¬¾ÍÊÇʹÓÃ˽Óй¹Ô캯Êý·ÀÖ¹À౻ʵÀý»¯¡£
ÓÐʱ£¬ÎÒÃÇ»áдһЩ¹¤¾ßÀ࣬Èçjava.lang.Math »òÊÇ java.util.Arrays, ÕâЩÀàÖж¼ÊǾ²Ì¬º¯Êý£¬ÔÚÉè¼ÆµÄʱºò£¬ÕâЩÀಢ²»ÊÇÓÃÀ´±»ÊµÀý»¯µÄ¡£Õâ¸öʱºò£¬¾ÍºÜÓбØÒª°Ñ¹¹Ô캯Êý˽Óл¯¡£
public class UtilityClass {
private UtilityClass() {
throw new Assertion ......
µ±ÖØÔØequals·½·¨Ê±,×ñѹßÀý.
equals²»ÊÇÿ¸öÀ඼±ØÐëÖØÔØ,µ±ÒÔϼ¸¸öÌõ¼þÂú×ã,¿ÉÒÔ²»ÖØÔØequals.
1. ÀàµÄʵÀýÖ»ÓÐͬһ¸ö²Å±»ÅÐΪÏàµÈ. ÈçThreadÀà.
2. ²»ÓùØÐÄÁ½¸ö¶ÔÏóÊÇ·ñÂß¼ÏàµÈµÄʱºò,»òÊÇ˵±È½Ï¶ÔÏóûÓÐÒâÒå.
3.¸¸ÀàÒѾÖØÔØÁËequals,¶øÇÒ¸¸ÀàµÄequalsÒ²ÊÊÓÃÓÚ×ÓÀà,×ÓÀà¾Í²»ÓÃÖØÔØequals.
4.ÕâÊÇÒ»¸ö˽ÓÐÀà»òÊ ......
javaÖеÄËÄÖÖÀàÐ͵ļ¯ºÏÀà
£¨1£©Vector £¨2£©BitSet£¨3£©Stack£¨4£©HashTable
2ö¾ÙÆ÷
ÔÚÈκμ¯ºÏÀàÖУ¬±ØÐëͨ¹ýijÖÖ·½·¨ÔÚÆäÖÐÖÃÈë¶ÔÏó£¬ÔÙÓÃÁíÒ»ÖÖ·½·¨´ÓÖÐÈ¡µÃ¶ÔÏó¡£ÔÚVectorÖУ¬addElement()¾ÍÊÇÎÒÃDzåÈë¶ÔÏó²ÉÓõķ½·¨
£¬¶þelementAt()ÔòÊÇÌáÈ¡¶ÔÏóµÄΨһ·½·¨¡£
Iterator¿ÉÒÔ´ïµ½Õâ¸öÄ¿µÄ£¬ËüÊÇÒ»¸ö¶ÔÏó£¬×÷ÓÃÊDZ ......