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

ʲôÑùµÄjava´úÂëÈÝÒ×memory leak?

ºÜ¶àdeveloperÖªµÀjavaÒ²¿ÉÄÜmemory leak£¬¹ØÓÚÕâ¸öÖ÷ÌâÒѾ­ÓкܶàÎÄÕÂÁË¡£ÎÒÕâÀïÖ»Ïë·ÖÏíÒ»ÏÂ×Ô¼ºµÄmemory leakµÄ¾­Ñé¡£
˵Ã÷Ò»ÏÂÕâÀïÖ¸µÄmemory leakÊdzÌÐò²»¼°Ê±ÊÍ·Åheapµ¼ÖµÄOutOfMemoryError.
Ê×ÏÈÒ»ÖÖÇé¿öÊÇcollection»òÕßÊÇmapÒ»Ö±±»putÊý¾Ý£¬Ã»Óлú»áremove£¬µ¼ÖÂOutOfMemoryError¡£ÓÈÆäÊǵ±collection»òÕßÊÇmap±»Éè¼Æ³Éstatic±äÁ¿µÄʱºò£¬Ëü¾ÍÊǸöglobalÐÔÖʵıäÁ¿£¬ºÜ¿ÉÄÜÓÀÔ¶²»»á±»¸³Îªnull¡£ÕâÒ²ÊDz»½¨ÒéʹÓÃstatic±äÁ¿µÄÒ»¸öÔ­Òò¡£
ÓÐÈË»á²ì¾õµ½¾ÍËãcollection¸³Îªnull£¬ÔªËØ»¹ÊÇ¿ÉÄÜδ±»ÊÍ·Å£º
Object o= new Object ();
ArrayList<Object > l=new ArrayList<Object >();
 l.add(o);
 l=null;
System.out.println(o==null);// "false" will be printed
Ô­ÒòÔÚÓÚÕâ¸öo »¹ÊÇ¿ÉÄܱ»³ÌÐòreferenceµ½¡£¶øÒ»°ãÇé¿öÏÂÎÒÃÇÓöµ½µÄÊÇ:
 l.add(new Object ());
ÔÚÕâÖÖÇé¿öÏ£¬l=null, oÒ²±»GCÁË¡£
ÎÒÒ²¿´µ½ÓÐÎÄÕÂÌáµ½ÔÚlistenerµÄģʽÏ£¬Èç¹ûlistenerÒ»Ö±ÔÚ×¢²áregister¶øÃ»Óлú»áremoveÒ²»áµ¼ÖÂOutOfMemoryError¡£ÆäʵlistenerÒ²ÊÇÒ»¸ölistµÄ½á¹¹£¬±¾ÖÊÉÏÊÇÒ»ÑùµÄ¡£ºÜ¶àlistenerÊÇÒÔÄäÃûÀà±»¹¹ÔìºÍ×¢²áµ½±»¼àÌýÀàÉÏÃæÈ¥µÄ£¬ ¶ø±»¼àÌýÀàÈç¹ûҲûÓÐÕýÈ·remove×¢²áµÄlistenerµÄ»°Ò²»áµ¼ÖÂOutOfMemoryError¡£


Ïà¹ØÎĵµ£º

java ´úÂëÓÅ»¯

 1.1 ²»ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀý
ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀýʱ£¬¹¹Ô캯ÊýÁ´ÖеÄËùÓй¹Ô캯Êý¶¼»á±»×Ô¶¯µ÷Óᣵ«Èç¹ûÒ»¸ö¶ÔÏóʵÏÖÁËCloneable½Ó¿Ú£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃËüµÄclone()·½·¨¡£clone()·½·¨²»»áµ÷ÓÃÈκÎÀ๹Ô캯Êý¡£
ÔÚʹÓÃÉè¼ÆÄ£Ê½£¨Design Pattern£©µÄ³¡ºÏ£¬Èç¹ûÓÃFactoryģʽ´´½¨¶ÔÏó£¬Ôò¸ÄÓÃclone()·½·¨´´½¨Ðµ ......

Java IO ²Ù×÷ InputStream

 import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
public class TestIO {
public static void main(String[] args) {
String fileName="E://test.txt";
testInputStream(fileName);
}

public static void testInputStre ......

javaºËÐļ¼Êõ¾íII±Ê¼Ç

 1.¼òµ¥Ï̴߳´½¨
(1)ʵÏÖRunnable½Ó¿Ú£¬Runnable½Ó¿ÚÖ»ÓÐÒ»¸ö·½·¨run:
public interface Runnable
{
void run();
}
´´½¨ÀàʵÏÖrun·½·¨
class MyRunnable implements Runnable
{
public void run()
{
/*ÈÎÎñ´úÂë*/
}
}
(2)´´½¨¶ÔÏó
Runnable r = new MyRunnable();
(3)ÓÉRunnable´´½¨Ò»¸öThread¶ÔÏó:
......

java×Ôѧ֮·


JAVA×Ôѧ֮·——ÂíÊ¿±ø
 2007Äê11ÔÂ06ÈÕ ÐÇÆÚ¶þ 05:47 P.M.[Ô­´´ - ÉÐѧÌÿƼ¼ - ÂíÊ¿±øÀÏʦ]
 
 JAVA×Ôѧ֮· Ò»:ѧ»áÑ¡Ôñ
 [×ªÔØÇë×¢Ã÷³ö´¦:http://www.bjsxt.com/zixue/zixuezhilu_1.html]
 
 ÎªÁ˾ÍÒµ£¬²»ÉÙͬѧ²Î¼Ó¸÷ÖÖ¸÷ÑùµÄÅàѵ¡£
 ¾öÐÄ×öÈí¼þµÄ£¬´ó¶àÊýÈË ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ