java퉀ÏÈÉùÃ÷һϣ¬ÌâĿԳöÓÚ£ºhttp://gocom.primeton.com/modules/newbb/item60284_60284.htm
JVMÊÇJava³ÌÐòµÄÔËÐл·¾³£¬Òò´Ë¶ÔÓÚJVMµÄÕÆÎÕÓÐÖúÓÚÀí½âJava³ÌÐòµÄÖ´ÐÐÒÔ¼°±àд£¬ÓÈÆäÊÇÔËÐÐʱÅöµ½µÄһЩ¹îÒìÎÊÌ⣬ÄÇôÔõôÑùÄÜ¿¼²ì×Ô¼º¶ÔÓÚJVM¹Ø¼ü֪ʶµãµÄÕÆÎÕÇé¿ö£¬°ïÖúѧϰJVM»úÖÆÄØ£¬ÔÚÕâÆªblogÖÐÀ´Ì½ÌÖÏ¡£
¶ÔÓÚJava³ÌÐò¶øÑÔ£¬JVMµÄ¹Ø¼ü»úÖÆÓУº×Ö½ÚÂëµÄ¼ÓÔØ¡¢·½·¨µÄÖ´ÐС¢¶ÔÏóÄÚ´æµÄ·ÖÅäºÍ»ØÊÕ¡¢Ï̺߳ÍËø»úÖÆ£¬Õ⼸¸ö»úÖÆÉæ¼°µ½µÄjvmµÄ֪ʶµãԶûÓÐдÕ⼸¸ö×ÖÕâô¼òµ¥£¬ÀïÃæµÄ¸´ÔÓ¶È»¹ÊǷdz£¸ßµÄ¡£
×Ö½ÚÂëµÄ¼ÓÔØ
JVMͨ¹ýClassLoaderÀ´Íê³É×Ö½ÚÂëµÄ¶¯Ì¬¼ÓÔØ£¬ÕâÀïÃæÉæ¼°µ½µÄÖ÷ÒªÊÇClassLoaderµÄË«Ç×ίÅÉ¡¢ClassLoaderµÄ±àд·½·¨¡¢ClassÊÇ·ñ±»¼ÓÔØµÄΨһ±êʶÒÔ¼°ClassµÄ¼ÓÔØ¹ý³Ì¡£
ÔÚ¿¼²ìµÄʱºòÎÒ¾õµÃ¿ÉÒÔÒÔÕâôÁ½µÀ¼òµ¥µÄÌâÀ´¿¼²ì£º
1¡¢Ð´Ò»¶Î½«Ä¿Â¼ÖÐÖ¸¶¨µÄ.classÎļþ¼ÓÔØµ½JVMµÄ³ÌÐò£¬²¢Í¨¹ýClass¶ÔÏó»ñÈ¡µ½ÍêÕûÀàÃûµÈÐÅÏ¢£»
2¡¢Ò»¶Îչʾ´úÂ룬ÀïÃæ°üº¬Ò»¸öÈ«¾Ö¾²Ì¬ÕûÐͱäÁ¿£¬ÎÊÈç¹ûÓÃÁ½¸öClassLoader¼ÓÔØ´Ë¶ÔÏó£¬Ö´ÐÐÕâ¸öÕûÐͱäÁ¿++²Ù×÷ºó½á¹û»áÊÇÔõôÑùµÄ£¿
·½·¨µÄÖ´ÐÐ
JVMÓÐ×Ô¼ºµÄÒ»Ì×Ö¸Áîϵͳ£¬×Ö½ÚÂëÖм´ÒѾÊÇÖ¸ÁîÁË£¬ÐèÒª´ó¸ÅÕÆÎÕÁËJVM¶Ôstatic¡¢interface¡¢instance¡¢¹¹ÔìÆ÷²ÉÓõIJ»Í¬µÄÖ´Ðз½·¨£¬ÁíÍâ¾ÍÊÇJVMÖз´ÉäµÄʵÏÖ£¨¿ÉÒÔÒÔSun JDKÀ´¾ÙÀý£©¡¢¶¯Ì¬´úÀíµÄʵÏÖ£¬×îºóÏà¹ØµÄ¾ÍÊÇJVMÖ´ÐÐ×Ö½ÚÂëµÄ·½Ê½£¨½âÊÍ¡¢JIT¡¢Hotspot£©£¬ÒÔ¼°Ê²Ã´Ê±ºò´¥·¢±àÒë³É»úÆ÷Â룬ÈçºÎ¿ØÖÆ¡£
ÔÚ¿¼²ìµÄʱºòÎÒ¾õµÃ¿ÉÒÔÒÔÕâôÈýµÀÌâÀ´¿¼²ì£º
1¡¢A a=new A();a.execute();ºÍIA a=new A();a.execute();Ö´ÐÐÓÐʲô²»Í¬£»
2¡¢·´ÉäµÄÐÔÄܵ͵ÄÔÒòÊÇ£¿
3¡¢±àдһ¶Î³ÌÐò£¬¶¯Ì¬µÄ´´½¨Ò»¸ö½Ó¿ÚµÄʵÏÖ£¬²¢¼ÓÔØµ½JVMÖÐÖ´ÐУ»£¨¿ÉÒÔÔÊÐíÓÃBCELµÈ¹¤¾ß£©
¶ÔÏóÄÚ´æµÄ·ÖÅäºÍ»ØÊÕ
Õâ¿éÉæ¼°µÄ֪ʶµãÒ²ÊDZȽϵĶ࣬ÀýÈçJVMÄÚ´æÇøÓòµÄ»®·Ö¡¢×ÔÈ»ÀàÐͺÍÒýÓÃÀàÐ͵ÄÄÚ´æ·ÖÅäµÄ²»Í¬¡¢TLAB¡¢GCµÄËã·¨¡¢Sun JDK¶ÔÓÚGCµÄʵÏÖ¡¢GC´¥·¢µÄʱ»ú¡¢GCµÄ¸ú×ٺͷÖÎöµÄ·½·¨¡£
ÔÚ¿¼²ìµÄʱºòÎÒ¾õµÃ¿ÉÒÔÒÔÕâôÈýµÀÌâÀ´¿¼²ì£º
1¡¢¾µäµÄString±È½Ï³ÌÐòÌ⣺
String a="a";
String b="b";
String ab="ab";
(a+b)==ab; ?? (ÒýÉîÌ⣬ÈçºÎ²ÅÄÜÈÃ(a+b)==ab£©
("a"+"b")==ab; ??
2¡¢Ð´Ò»¶Î³ÌÐò£¬ÈÃÆäOutOfMemory£¬»òƵ·±Ö´ÐÐMinor GC£¬µ«ÓÖ²»´¥·¢Full GC£¬ÓÖ»òƵ·±Ö´ÐÐFull GC£¬µ«²»Ö´ÐÐminor GC£¬¶øÇÒ²
Ïà¹ØÎĵµ£º
±³¾°¼ò½é£ºKMPËã·¨ÓÃÀ´´¦Àí×Ö·û´®Æ¥ÅäµÄ¡£¸øÄãA,BÁ½¸ö×Ö·û´®£¬¼ì²éB´®ÊÇ·ñÊÇA´®µÄ×Ó´®£¬ÀàËÆÓÚJavaµÄString.indexOf("")¡£Ö®ËùÒÔ½Ð×öKMP£¬ÊÇÒòΪÕâ¸öËã·¨ÊÇÓÉKnuth¡¢Morris¡¢PrattÈý¸öÌá³öÀ´µÄ£¬È¡ÁËÕâÈý¸öÈ˵ÄÃû×ÖµÄÍ·Ò»¸ö×Öĸ¡£
ÔÀí½éÉÜ£ºÕÒµ½Æ¥Åäʧ°ÜʱµÄ×îºÏÊʵĻØÍËλÖ㬶ø²»ÊǼòµ¥µÄ»ØÍ˵½×Ó´®µÄµÚÒ»¸ö×Ö·û£¨³£¹ ......
Õâ²»ÊÇʲô½Ì²Ä£¬±ÊÕßÓÐʱ»áÔÚÂÛ̳ÉÏÇÆÇÆ£¬¿´µ½²»ÉÙ³õѧÕßÎʵ½ºÜ¶àÎÊÌ⣬ÕâЩÎÊÌâÊÇjava³ÌÐòÔ±Ó¦¸Ã¶®µÃµÄ£¬¶øÒ»°ãÊéÉϲ»»á½²µ½»òÕßÒ»±Ê´ø¹ýµÄ֪ʶ¡£Òò´Ë¶·µ¨Í¿Ñ»Ò»ÆªÎÄÕ£¬°ÑÏë˵µÄÔÚÕâÀïÒ»¿ÚÆøËµÍê¡£ÕâÒ²ÊDZ¾È˵ÚÒ»´Îд¼¼ÊõÐÔµÄÎÄÕ£¬Îıʲ»³©Ö®Í⣬»¹Çë¸÷λ¼ûÁ¡£
Ê×ÏȽ²Çå³þÀàºÍ¶ÔÏóµÄÇø±ð¡£
ÀàÊǹ㷺µÄ¸ÅÄ±íʾһ¸ö ......
JAVA³ÌÐòÔ±ÃæÊÔ32ÎÊ
µÚÒ»£¬Ì¸Ì¸final, finally, finalizeµÄÇø±ð¡£
final ÐÞÊηû£¨¹Ø¼ü×Ö£©Èç¹ûÒ»¸öÀà±»ÉùÃ÷Ϊfinal£¬Òâζ×ÅËü²»ÄÜÔÙÅÉÉú³öеÄ×ÓÀ࣬²»ÄÜ×÷Ϊ¸¸Àà±»¼Ì³Ð¡£Òò´ËÒ»¸öÀ಻Äܼȱ»ÉùÃ÷Ϊ abstractµÄ£¬ÓÖ±»ÉùÃ÷ΪfinalµÄ¡£½«±äÁ¿»ò·½·¨ÉùÃ÷Ϊfinal£¬¿ÉÒÔ±£Ö¤ËüÃÇÔÚʹÓÃÖв»±»¸Ä±ä¡£±»ÉùÃ÷ΪfinalµÄ±äÁ¿±ØÐëÔÚÉù ......
1.ʹÓÃJFrameµÄenableEventsºÍprocessWindowEvent
//Frame1.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Frame1 extends JFrame {
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
this.setSize(ne ......
ÓÃInstallAnywhere´ò°üJava³ÌÐò°üº¬MySQLÊý¾Ý¿â
InstallAnywhere´ò°üJava³ÌÐòʱ¿ÉÒÔ×Ô¶¯Íê³ÉjreµÄ´ò°ü£¬µ«ÊÇÐèÒªMySQLÊý¾Ý¿âµÄ³ÌÐò¾ÍµÃÊÖ¶¯Ìí¼Ó¡£×ÊÁÏÌ«ÉÙ£¬¾À½áÁËÈýÌ죬ÖÕÓÚ½â¾ö
1¡¢ ÏÂÔØÂÌÉ«°æµÄMySQL£¬¿ÉÒÔÈ¥¹ÙÍøÏÂÔØ¡£ÍøÓÑÖÆ×÷ÁËMySQLµÄÂÌÉ«¾«¼òBat°æ£¨http://download.csdn.net/source/524812 ......