JAVAÓÅ»¯±à³Ì
java´úÂëÓÅ»¯±à³Ì
1.JVM ¹ÜÀíÁ½ÖÖÀàÐ͵ÄÄÚ´æ:¶ÑÄÚ´æ(heap),Õ»ÄÚ´æ(stack),¶ÑÄÚÔÚÖ÷ÒªÓÃÀ´´æ´¢³ÌÐòÔÚÔËÐÐʱ´´½¨»òʵÀý»¯µÄ¶ÔÏóÓë±äÁ¿.¶øÕ»ÄÚ´æÔòÊÇÓÃÀ´´æ´¢³ÌÐò´úÂëÖÐÉùÃ÷Ϊ¾²Ì¬(static)(»ò·Ç¾²Ì¬)µÄ·½·¨.
2.JVM ÖжÔÏóµÄÉúÃüÖÜÆÚ,´´½¨½×¶Î,Ó¦Óý׶Î,²»¿ÉÊÓ½×¶Î,²»¿Éµ½´ï½×¶Î,¿ÉÊÕ¼¯½×¶Î,ÖÕ½á½×
¶Î,ÊͷŽ׶Î
3.±ÜÃâÔÚÑ»·ÌåÖд´½¨¶ÔÏó,¼´Ê¹¸Ã¶ÔÏóµãÓÃÄÚ´æ¿Õ¼ä²»´ó.
for(int i=0;i<10000;++i){
Object obj = new Object();
System.out.println("obj="+obj);
}
Ó¦¸Ä³É
Object obj = null;
for(int i=0;i<10000;++i){
obj = new Object();
System.out.println("obj="+obj);
}
4.ÈíÒýÓõÄÖ÷ÒªÌØµãÊǾßÓнÏÇ¿µÄÒýÓù¦ÄÜ.Ö»Óе±ÄÚ´æ²»¹»µÄʱºò,²Å»ØÊÕÕâÀàÄÚ´æ,Òò´ËÔÚ
ÄÚ´æ×ã¹»µÄʱºò,ËüÃÇͨ³£²»±»»ØÊÕ.Ëü¿ÉÒÔÓÃÓÚʵÏÖһЩ³£ÓÃ×ÊÔ´µÄ»º´æ,ʵÏÖCache µÄ¹¦ÄÜ
A a = new A();
SoftReference sr = new SoftReference(a);
a = null;
if(sr !=null){
a = sr.get();
}else{
a = new A();
sr = new SoftReference(a);
}
5.ÈõÒýÓöÔÏóÓëSoft ÒýÓöÔÏó×î´ó²»Í¬¾ÍÔÚÓÚ:GC ÔÚ½øÐлØÊÕʱ,ÐèҪͨ¹ýËã·¨¼ì²éÊÇ·ñ»Ø
ÊÕSoft ÒýÓöÔÏó,¶ø¶ÔÓÚWeak ÒýÓöÔÏó,GC ×ÜÊǽøÐлØÊÕ.
A a = new A();
WeakReference wr = new WeakReference(a);
a = null;
if(sr !=null){
a = wr.get();
}else{
a = new A();
wr = new WeakReference(a);
}
6.¹²Ïí¾²Ì¬±äÁ¿´æ´¢¿Õ¼ä
7.ÓÐʱºòÎÒÃÇΪÁËÌá¸ßϵͳÐÔÄÜ,±ÜÃâÖØ¸´ºÄʱµÄ²Ù×÷,Ï£ÍûÄܹ»ÖØÓÃһЩ´´½¨Íê³ÉµÄ¶ÔÏó,Àû
ÓöÔÏó³ØÊµÏÖ.ÀàËÆJDBC Á¬½Ó³Ø.
8.˲¼äÖµ,ÐòÁл¯¶ÔÏó´ó±äÁ¿Ê±,Èç¹û´Ë´ó±äÁ¿ÓÖûÓÐÓÃ;,ÔòʹÓÃtransient ÉùÃ÷,²»ÐòÁл¯´Ë±ä
Á¿.Í¬Ê±ÍøÂç´«ÊäÖÐÒ²²»´«Êä.
9.²»ÒªÌáǰ´´½¨¶ÔÏó
void f(){
int i;
A a = new A();
if(....){
a.showMessage();
}
}
¸Ä³É
void f(){
int i;
A a = null;
if(....){
//Óõ½Ê±²ÅʵÀý»¯
a = new A();
a.showMessage();
}
}
10 .(1)×î»ù±¾µÄ½¨Òé¾ÍÊǾ¡ÔçÊÍ·ÅÎÞÓöÔÏóµÄÒýÓÃ
A a = new A();
a = null; //µ±Ê¹ÓöÔÏóa Ö®ºóÖ÷¶¯½«ÆäÉèÖÃΪ¿Õ
(2)¾¡Á¿ÉÙÓÃfinalize º¯Êý.
(3) Èç¹ûÐèҪʹÓþ³£Óõ½µÄͼƬչ,¿ÉÒÔʹÓÃÈíÒýÓÃ.
(4) ×¢Ò⼯ºÏÊý¾ÝÀàÐÍ,°üÀ¨Êý×é,Ê÷µÈÊý¾Ý,ÕâЩÊý¾Ý½á¹¹¶ÔGC À´Ëµ,»ØÊÕ¸üΪ¸´ÔÓ,
(5) ¾¡Á¿±ÜÃâÔÚÀàµÄĬÈϹ¹ÔìÆ÷Öд´½¨,³õʼ»¯´óÁ¿µÄ¶ÔÏó,·ÀÖ¹ÔÚµ÷ÓÃÆä×ÔÀàµÄ¹¹ÔìÆ÷
ʱÔì³É²»±ØÒªµÄÄÚ´æ×ÊÔ´ÀË·Ñ.
(6) ¾¡Á¿±ÜÃâÇ¿ÖÆÏµÍ³×ö
Ïà¹ØÎĵµ£º
ÔÚJSPÀ»ñÈ¡¿Í»§¶ËµÄIPµØÖ·µÄ·½·¨ÊÇ£ºrequest.getRemoteAddr£¨£©£¬ÕâÖÖ·½·¨Ôڴ󲿷ÖÇé¿ö϶¼ÊÇÓÐЧµÄ¡£µ«ÊÇÔÚͨ¹ýÁËApache£¬SquidµÈ·´Ïò´úÀíÈí¼þ¾Í²»ÄÜ»ñÈ¡µ½¿Í»§¶ËµÄÕæÊµIPµØÖ·ÁË¡£
¡¡¡¡
Tag£ºJava ¿Í»§¶Ë ÕæÊµIPµØÖ·
ÔÚJSPÀ»ñÈ¡¿Í»§¶ËµÄIPµØÖ·µÄ·½·¨ÊÇ£ºrequest.getRemoteAddr£¨£©£¬ÕâÖÖ·½·¨Ôڴ󲿷ÖÇé¿ ......
POIFSFileSystem fs=new POIFSFileSystem(new FileInputStream(cfname));
HSSFWorkbook wb = new HSSFWorkbook(fs);
......
±¾ÎÄÃæÏòÓÚÄÇЩÈí¼þ¼Ü¹¹Ê¦£¬Éè¼ÆÊ¦ºÍ¿ª·¢ÈËÔ±£¬ËûÃÇÏëʹÓà IBM® Rational® Software Architect ´Ó Java™ Ô´´úÂëÀ´ÄæÏò¹¤³ÌÉú³É UML ÀàºÍÐòÁÐͼ¡£ ÄæÏò¹¤³Ì¾³£±»ÓÃÀ´´ÓÒÑÓеÄÔ´´úÂëÖÐÒÔÒ»ÖÖ³éÏóÄ£ÐÍ UML ¸ñʽÀ´»ñµÃ¶ªÊ§µÄÉè¼ÆÎĵµ£¬Æä¿ÉÒÔÓÃÀ´Ñо¿Ò»¸öϵͳµÄ¾²Ì¬½á¹¹ºÍ¶¯Ì¬ÐÐΪ£¬²¢ÓÃÓÚÀ©Õ¹ÐµÄÌØÐÔµ½²úÆ·¡£ ......
³£³£Óöµ½Êý×éÅÅÐòµÄÎÊÌâ.±ÈÈçÎÒÓÐÒ»¸öPersonÀà,ËüµÄʵÀý¶ÔÏó´æ´¢ÔÚArrayListÊý×éÖÐ,ÏÖÔÚÒª°ÑArrayListÊý×éÖеÄPerson¶ÔÏó°´ÕÕÄêÁäÅÅÐò.
ÆäʵÕâÖÖÇé¿ö¾³£Óöµ½.
ÏÂÃæ¸ø³öÔ´´úÂë:
1:Person.JavaÎļþ:-------------------------------
public class Person{
String name;
int age;
public Person(String name,int age){ ......
ÔçÉÏÆð´²ÓеãÍíÁË£¬µ½Ñ§Ð£µÃʱºò¶¼8£º50ÁË£¬Ò»½ø½ÌÊÒ¿´¼ûÕÅТÏéÀÏʦÔÚ½ÌÊÒÀï¸øÍ¬Ñ§Ãǽâ¾öÎÊÌ⣬²»¼ûÁËÀϱϵÄÉíÓ°£¬»¹ÒÔΪ×ß´í½ÌÊÒÁËÄØ£¬°´Àí˵Õâ¸öʱºòÀϱÏÓ¦¸ÃÔçÀ´Á˲ÅÊÇ£¬Ò»ÎʲÅÖªµÀÊDZÏÀÏʦ²¡ÁË,È¥Ò½Ôº¼ì²éÈ¥ÁË£¬Ï£Íû±ÏÀÏʦÄÜÔçµãºÃÆðÀ´£¡
½ñÌìÊÇÕÅÀÏʦ¸øÎÒÃÇÉϿΣ¬ÉîÈëÆÊÎöservlet£¬ÔÚûÀ´´«ÖDz¥¿Í֮ǰ¿´¹ý²»ÉÙÒÔǰÕÅÀ ......