javaÐéÄâ»úʹÓÃÄÚ´æµÄ˼¿¼
¹ØÓÚjavaÐéÄâ»úʹÓÃÄÚ´æµÄ˼¿¼
JVM(javaÐéÄâ»ú)Æäʵ¾ÍÊDzÙ×÷ϵͳ(Èçwindows)ÉϵÄÒ»¸öÆÕͨ³ÌÐò(½ø³ÌÃû½Ðjava,Õâ¸ö³ÌÐò¿ÉÒÔ½âÊÍÖ´ÐÐclassÎļþ)¡£
µ±java½ø³ÌÆô¶¯Ê±»áÊ×ÏÈ·ÖÅäÒ»¿é¶ÑÄڴ棨×îСÄڴ棩£¬ÒÔºóÿµ±class×Ö½ÚÂë³ÌÐòÒªÇóJVM(java½ø³Ì)·ÖÅäÄÚ´æÊ±£¬JVM
¾Í»áÔÚÔ¤ÏÈ·ÖÅäµÄÄÇ¿éÄÚ´æÉÏÃæÎªclass×Ö½ÚÂë³ÌÐò·ÖÅäÄڴ棬µ±Ô¤ÏÈ·ÖÅäµÄÄÇ¿éÄÚ´æÓÃûʱ£¬JVM»áÔÙÏò²Ù×÷ϵͳҪÄÚ´æ
£¨ÎïÀíÄڴ棩£¬ µ«ÊÇJVM²»»áÎÞÏÞÖÆµÄÏò²Ù×÷ϵͳҪÄڴ棬µ±ËüÕ¼ÓõÄʵ¼Ê¶ÑÄÚ´æ´ïµ½Ò»¸öÔ¤¶¨Öµ£¨×î´ó¿ÉÓÃÄڴ棩ʱ£¬
Èç¹ûclass×Ö½ÚÂë³ÌÐò»¹ÏòJVMÒªÄڴ棬²¢ÇÒJVMÎÞ·¨Í¨¹ý»ØÊÕµ±Ç°¶ÑÖеÄÄÚ´æÀ´Îªclass×Ö½ÚÂë³ÌÐò·þÎñʱ£¬Ëü¾Í»á¸ø³Ì
ÐòÅ׳öjava.lang.OutOfMemoryError¡£ÆäÖÐÄÚ´æ»ØÊÕʱ»ú²¢²»ÊÇÔÙÓõôÄÚ´æ´ïµ½×î´ó¿ÉÓÃÄÚ´æÊ±²Å½øÐУ¬ËûµÄÔËÐÐʱ»úÊÇ
²»È·¶¨µÄ£¬¿É¼ûJVMµÄ×î´ó¿ÉÓÃÄÚ´æ¾ÍÊÇÄãµÄjava³ÌÐò£¨class×Ö½ÚÂë³ÌÐò£©Äܹ»Ê¹ÓõÄ×î´óÄÚ´æ¡£
ÀýÈ磺Äã°Ñjvm×î´ó¿ÉÓÃÄÚ´æÉèΪ200M,¶øÄãµÄÎïÀíÄÚ´æ1G.ÔÚÕâÖÖ³ÌÐòÏÂÄãµÄclass³ÌÐò×î¶àÄÜʹÓÃ200MÄڴ棬ËäÈ»Äã¿ÉÄÜ
»¹ÓÐ800MÄÚ´æ¿ÉÓ㬵«Êǵ±ÄãµÄ³ÌÐòÓõô200MºóÈç¹ûÔÙÒªÄڴ棬JVM²»»áÒòΪÄ㻹ÓÐ800MÄÚ´æ¶øÎªÄã·ÖÅäÄڴ棬Ëû»áÏòÄãÅ×
³öjava.lang.OutOfMemoryError .
ËùÒÔJVM×î´ó¿ÉÓÃÄÚ´æ²ÎÊý±È½ÏÖØÒª¡£
Ò»°ã½¨Òé¶ÑµÄ×î´óÖµÉèÖÃΪ¿ÉÓÃÄÚ´æµÄ×î´óÖµµÄ80%¡£
£¨ÒÔÏÂÎª×ªÍøÂ磩
TomcatĬÈÏ¿ÉÒÔʹÓõÄÄÚ´æÎª64MB£¬ÔڽϴóÐ͵ÄÓ¦ÓÃÏîÄ¿ÖУ¬ÕâµãÄÚ´æÊDz»¹»µÄ£¬ÐèÒªµ÷´ó¡£
WindowsÏ£¬ÔÚÎļþ{tomcat_home}/bin/catalina.bat£¬UnixÏ£¬ÔÚÎļþ{tomcat_home}/bin/catalina.shµÄÇ°Ãæ£¬
Ôö¼ÓÈçÏÂÉèÖãº
set JAVA_OPTS=-Xms¡¾³õʼ»¯ÄÚ´æ´óС¡¿ -Xmx¡¾¿ÉÒÔʹÓõÄ×î´óÄÚ´æ¡¿
ÐèÒª°ÑÕâ¸öÁ½¸ö²ÎÊýÖµµ÷´ó¡£ÀýÈ磺 set JAVA_OPTS=-Xms64m -Xmx256m
±íʾ³õʼ»¯ÄÚ´æÎª256MB£¬¿ÉÒÔʹÓõÄ×î´óÄÚ´æÎª512MB¡£
ÁíÍâÐèÒª¿¼ÂǵÄÊÇJavaÌṩµÄÀ¬»ø»ØÊÕ»úÖÆ¡£ÐéÄâ»úµÄ¶Ñ´óС¾ö¶¨ÁËÐéÄâ»ú»¨·ÑÔÚÊÕ¼¯À¬»øÉϵÄʱ¼äºÍƵ¶È¡£ÊÕ¼¯À¬»ø¿É
ÒÔ½ÓÊܵÄËÙ¶ÈÓëÓ¦ÓÃÓйأ¬Ó¦¸Ãͨ¹ý·ÖÎöʵ¼ÊµÄÀ¬»øÊÕ¼¯µÄʱ¼äºÍƵÂÊÀ´µ÷Õû¡£Èç¹û¶ÑµÄ´óСºÜ´ó£¬ÄÇôÍêÈ«À¬»øÊÕ¼¯¾Í
»áºÜÂý£¬µ«ÊÇÆµ¶È»á½µµÍ¡£Èç¹ûÄã°Ñ¶ÑµÄ´óСºÍÄÚ´æµÄÐèÒªÒ»Ö£¬ÍêÈ«ÊÕ¼¯¾ÍºÜ¿ì£¬µ«ÊÇ»á¸ü¼ÓƵ·±¡£µ÷Õû¶Ñ´óСµÄµÄÄ¿
µÄÊÇ×îÐ
Ïà¹ØÎĵµ£º
Javaѧϰ´ÓÈëÃŵ½¾«Í¨
Ò»¡¢ JDK (Java Development Kit)
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......
×ªÔØ×Ô http://www.cn-java.com/www1/?action-viewnews-itemid-8283
ÓÉÓÚͬһ½ø³ÌµÄ¶à¸öÏ̹߳²ÏíͬһƬ´æ´¢¿Õ¼ä£¬ÔÚ´øÀ´·½±ãµÄͬʱ£¬Ò²´øÀ´ÁË·ÃÎʳåÍ»Õâ¸öÑÏÖØµÄÎÊÌâ¡£JavaÓïÑÔÌṩÁËרÃÅ»úÖÆÒÔ½â¾öÕâÖÖ³åÍ»£¬ÓÐЧ±ÜÃâÁËͬһ¸öÊý¾Ý¶ÔÏó±»¶à¸öÏß³Ìͬʱ·ÃÎÊ¡£
¡¡¡¡ÐèÒªÃ÷È·µÄ¼¸¸öÎÊÌ⣺
¡¡¡¡1)synchronized¹Ø¼ü×Ö¿ÉÒÔ×÷Ϊ ......
Ò»¡¢ µ¥ÏîÑ¡ÔñÌâ
¡¡¡¡1£®JavaÊÇ´Ó£¨ £©ÓïÑԸĽøÖØÐÂÉè¼Æ¡£
¡¡¡¡A£®Ada B£®C++ C£®Pasacal D£®BASIC
¡¡¡¡´ð°¸£ºB
¡¡¡¡
¡¡¡¡2£®ÏÂÁÐÓï¾äÄÄÒ»¸öÕýÈ·£¨ £©
¡¡¡¡A£® Java³ÌÐò¾±àÒëºó»á²úÉúmachine code
¡¡¡¡B£® Java³ÌÐò¾±àÒëºó»á²úÉúbyte code
¡¡¡¡C£® Java³ÌÐò¾±àÒëºó»á²úÉúDLL
¡¡¡¡D£® ÒÔÉ϶¼²»ÕýÈ·
¡¡¡¡´ð°¸£ºB ......
ÔÚJavaÖУ¬“Ïָ߳̔Á½¼þ²»Í¬µÄÊÂÇ飺
1¡¢java.lang.ThreadÀàµÄÒ»¸öʵÀý£»
2¡¢Ï̵߳ÄÖ´ÐС£
ʹÓÃjava.lang.ThreadÀà»òÕßjava.lang.Runnable½Ó¿Ú±àд´úÂëÀ´¶¨Ò塢ʵÀý»¯ºÍÆô¶¯ÐÂÏ̡߳£
Ò»¸öThreadÀàʵÀýÖ»ÊÇÒ»¸ö¶ÔÏó£¬ÏñJavaÖеÄÈÎºÎÆäËû¶ÔÏóÒ»Ñù£¬¾ßÓбäÁ¿ºÍ·½·¨£¬ÉúËÀÓÚ¶ÑÉÏ¡£
JavaÖУ¬Ã¿¸öÏ̶߳¼ÓÐÒ»¸öµ÷ ......
package com.infowarelab.java.test;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class ReflectTester {
@SuppressWarnings("unchec ......