¡¾×ª¡¿ÓÅÐãJava³ÌÐòÔ±±ØÐëÁ˽âµÄGC¹¤×÷ÔÀí
Ò»¸öÓÅÐãµÄJava³ÌÐòÔ±±ØÐëÁ˽âGCµÄ¹¤×÷ÔÀí¡¢ÈçºÎÓÅ»¯GCµÄÐÔÄÜ¡¢ÈçºÎÓëGC½øÐÐÓÐÏ޵Ľ»»¥£¬ÒòΪÓÐһЩӦÓóÌÐò¶ÔÐÔÄÜÒªÇó½Ï¸ß£¬ÀýÈçǶÈëʽϵͳ¡¢ÊµÊ±ÏµÍ³µÈ£¬Ö»ÓÐÈ«ÃæÌáÉýÄÚ´æµÄ¹ÜÀíЧÂÊ £¬²ÅÄÜÌá¸ßÕû¸öÓ¦ÓóÌÐòµÄÐÔÄÜ¡£±¾ÆªÎÄÕÂÊ×Ïȼòµ¥½éÉÜGCµÄ¹¤×÷ÔÀíÖ®ºó£¬È»ºóÔÙ¶ÔGCµÄ¼¸¸ö¹Ø¼üÎÊÌâ½øÐÐÉîÈë̽ÌÖ£¬×îºóÌá³öһЩJava³ÌÐòÉè¼Æ½¨Ò飬´ÓGC½Ç¶ÈÌá¸ßJava³ÌÐòµÄÐÔÄÜ¡£
GCµÄ»ù±¾ÔÀí
JavaµÄÄÚ´æ¹ÜÀíʵ¼ÊÉϾÍÊǶÔÏóµÄ¹ÜÀí£¬ÆäÖаüÀ¨¶ÔÏóµÄ·ÖÅäºÍÊÍ·Å¡£
¶ÔÓÚ³ÌÐòÔ±À´Ëµ£¬·ÖÅä¶ÔÏóʹÓÃnew¹Ø¼ü×Ö£»ÊͷŶÔÏóʱ£¬Ö»Òª½«¶ÔÏóËùÓÐÒýÓø³ÖµÎªnull£¬ÈóÌÐò²»Äܹ»ÔÙ·ÃÎʵ½Õâ¸ö¶ÔÏó£¬ÎÒÃdzƸöÔÏóΪ"²»¿É´ïµÄ".GC½«¸ºÔð»ØÊÕËùÓÐ"²»¿É´ï"¶ÔÏóµÄÄÚ´æ¿Õ¼ä¡£
¶ÔÓÚGCÀ´Ëµ£¬µ±³ÌÐòÔ±´´½¨¶ÔÏóʱ£¬GC¾Í¿ªÊ¼¼à¿ØÕâ¸ö¶ÔÏóµÄµØÖ·¡¢´óСÒÔ¼°Ê¹ÓÃÇé¿ö¡£Í¨³££¬GC²ÉÓÃÓÐÏòͼµÄ·½Ê½¼Ç¼ºÍ¹ÜÀí¶Ñ£¨heap£©ÖеÄËùÓжÔÏó£¨Ïê¼û ²Î¿¼×ÊÁÏ1 £©¡£Í¨¹ýÕâÖÖ·½Ê½È·¶¨ÄÄЩ¶ÔÏóÊÇ"¿É´ïµÄ"£¬ÄÄЩ¶ÔÏóÊÇ"²»¿É´ïµÄ".µ±GCÈ·¶¨Ò»Ð©¶ÔÏóΪ"²»¿É´ï"ʱ£¬GC¾ÍÓÐÔðÈλØÊÕÕâЩÄÚ´æ¿Õ¼ä¡£µ«ÊÇ£¬ÎªÁ˱£Ö¤ GCÄܹ»ÔÚ²»Í¬Æ½Ì¨ÊµÏÖµÄÎÊÌ⣬Java¹æ·¶¶ÔGCµÄºÜ¶àÐÐΪ¶¼Ã»ÓнøÐÐÑϸñµÄ¹æ¶¨¡£ÀýÈ磬¶ÔÓÚ²ÉÓÃʲôÀàÐ͵ĻØÊÕËã·¨¡¢Ê²Ã´Ê±ºò½øÐлØÊÕµÈÖØÒªÎÊÌⶼûÓÐÃ÷È·µÄ¹æ¶¨¡£Òò´Ë£¬²»Í¬µÄJVMµÄʵÏÖÕßÍùÍùÓв»Í¬µÄʵÏÖËã·¨¡£ÕâÒ²¸øJava³ÌÐòÔ±µÄ¿ª·¢´øÀ´Ðж಻ȷ¶¨ÐÔ¡£±¾ÎÄÑо¿Á˼¸¸öÓëGC¹¤×÷Ïà¹ØµÄÎÊÌ⣬ŬÁ¦¼õÉÙÕâÖÖ²»È·¶¨ÐÔ¸øJava³ÌÐò´øÀ´µÄ¸ºÃæÓ°Ïì¡£
ÔöÁ¿Ê½GC£¨ Incremental GC £©
GCÔÚJVMÖÐͨ³£ÊÇÓÉÒ»¸ö»òÒ»×é½ø³ÌÀ´ÊµÏֵģ¬Ëü±¾ÉíÒ²ºÍÓû§³ÌÐòÒ»ÑùÕ¼ÓÃheap¿Õ¼ä£¬ÔËÐÐʱҲռÓÃCPU.µ±GC½ø³ÌÔËÐÐʱ£¬Ó¦ÓóÌÐòÍ£Ö¹ÔËÐС£Òò´Ë£¬µ±GCÔËÐÐʱ¼ä½Ï³¤Ê±£¬Óû§Äܹ»¸Ðµ½ Java³ÌÐòµÄÍ£¶Ù£¬ÁíÍâÒ»·½Ã棬Èç¹ûGCÔËÐÐʱ¼äÌ«¶Ì£¬Ôò¿ÉÄܶÔÏó»ØÊÕÂÊÌ«µÍ£¬ÕâÒâζ×Å»¹ÓкܶàÓ¦¸Ã»ØÊյĶÔÏóûÓб»»ØÊÕ£¬ÈÔȻռÓôóÁ¿ÄÚ´æ¡£Òò´Ë£¬ÔÚÉè¼ÆGCµÄʱºò£¬¾Í±ØÐëÔÚÍ£¶Ùʱ¼äºÍ»ØÊÕÂÊÖ®¼ä½øÐÐȨºâ¡£Ò»¸öºÃµÄGCʵÏÖÔÊÐíÓû§¶¨Òå×Ô¼ºËùÐèÒªµÄÉèÖã¬ÀýÈçÓÐЩÄÚ´æÓÐÏÞÓÐÉ豸£¬¶ÔÄÚ´æµÄʹÓÃÁ¿·Ç³£Ãô¸Ð£¬Ï£ÍûGCÄܹ»×¼È·µÄ»ØÊÕÄڴ棬Ëü²¢²»ÔÚÒâ³ÌÐòËٶȵķÅÂý¡£ÁíÍâÒ»Ð©ÊµÊ±ÍøÂçÓÎÏ·£¬¾Í²»Äܹ»ÔÊÐí³ÌÐòÓг¤Ê±¼äµÄÖжϡ£ÔöÁ¿Ê½GC¾ÍÊÇͨ¹ýÒ»¶¨µÄ»ØÊÕËã·¨£¬°ÑÒ»¸ö³¤Ê±¼äµÄÖжϣ¬»®·ÖΪºÜ¶à¸öСµÄÖжϣ¬Í¨¹ýÕâÖÖ·½Ê½¼õÉÙGC¶ÔÓû§³ÌÐòµÄÓ°Ïì¡£ËäÈ»£¬ÔöÁ¿Ê½GCÔÚÕûÌåÐÔÄÜÉÏ¿ÉÄܲ»ÈçÆÕͨGCµÄЧÂʸߣ
Ïà¹ØÎĵµ£º
¹ØÓÚÁùÖÖJavaÒì³£´¦Àí³ÌÐòµÄªϰ
Äã¾õµÃ×Ô¼ºÊÇÒ»¸öJavaר¼ÒÂð£¿ÊÇ·ñ¿Ï¶¨×Ô¼ºÒÑ¾È«ÃæÕÆÎÕÁËJavaµÄÒì³£´¦Àí»úÖÆ£¿ÔÚÏÂÃæÕâ¶Î´úÂëÖУ¬ÄãÄܹ»Ñ¸ËÙÕÒ³öÒì³£´¦ÀíµÄÁù¸öÎÊÌâÂð£¿
1 OutputStreamWriter out = ...
2 java.sql.Connection conn = ...
3 try { // ¢É
4 ¡¡Statement stat = conn.createStatement();
5 ¡¡ResultS ......
import java.io.UnsupportedEncodingException;
/**
* ת»»×Ö·û´®µÄ±àÂë
*/
public class ChangeCharset {
/** 7λASCII×Ö·û£¬Ò²½Ð×÷ISO646-US¡¢Unicode×Ö·û¼¯µÄ»ù±¾À¶¡¿é */
public static final String US_ASCII = "US-ASCII";
/** ISO À¶¡×Öĸ±í No.1£¬Ò²½Ð×÷ ISO-LATIN-1 */
public static final String ISO_ ......
¹Ø¼ü×Ö: byte String
ÎÊÌâ1£ºjavaÖÐûÓÐʵÏÖÕâÖÖ“byte a = 0xB2 --> String b = “B2””ת»»µÄ¼òµ¥ÊµÏÖÐèÒª×Ô¼ºÊµÏÖ¡£
´ð£º×Ô¼º±àдµÄת»»º¯Êý£¬Ë¼Â·½«byteµÄ¸ßµÍ4λ·Ö¿ª£¬·Ö±ðת»»Îª¶ÔÓ¦µÄ×Ö·ûÈ»ºóºÏ³É·µ»ØµÄ×Ö·û´®¡£
java ´úÂë
public static String byteToString(byte b) { ......
±¾ÎĽéÉÜJava SwingÖеÄJTreeÄ£ÐÍ£¬½éÉÜÈçºÎ´´½¨¡¢Ð޸ġ¢±éÀú£¬ÉèÖÃÊ÷¡£²Î¿¼Core Java2Ïà¹ØÕ½ڼ°ÆäÔ´´úÂë¡£
SwingÊ÷ʹÓÃÈËÃÇËùÊìϤµÄÎļþ¼ÐºÍÊ÷ҶͼÀ´ÏÔʾ·Ö²ãµÄÊý¾Ý¡£Ê÷Óɽڵã×é³É£¬½Úµã¿ÉÒÔÊÇÎļþ¼Ð£¬Ò²¿ÉÒÔÊÇÊ÷Ò¶¡£Îļþ¼Ð¿ÉÒÔÓÐ×ӽڵ㣬³ý¸ù½ÚµãÖ®ÍâµÄËùÓнڵ㶼ֻÓÐÒ»¸ö¸¸½Úµã¡£¿ÕµÄÎļþ¼ÐÓëÊ÷Ò¶µÄ²»Í¬Ö®´¦¾ÍÔÚÓÚËüÔÊ ......
ÔÚÉÏÒ»¸öÎÄÕÂÀï,ÎÒÃǰÑÏîÄ¿½¨ºÃÁË,²¢ÇÒÒѾ³É¹¦ÔËÐÐ,ÏÖÔÚÀ´Àí½âÏÂzkʼþÇý¶¯(event-driven)µÄ£¬»ùÓÚ×é¼þ(component-based)µÄÌØµã
ÏÈÀ´µãÀíÂÛ,ʲô½Ð×ö»ùÓÚ×é¼þ,ά»ù°Ù¿ÆÀïÃæÕâôÃèÊöµÄ:»ùÓÚ×é¼þµÄÈí¼þ¹¤³Ì£¨Component-based software engineering£¬¼ò³ÆCBSE£©»ò»ùÓÚ×é¼þµÄ¿ª·¢£¨Component-Based Development£¬¼ò³ÆCBD£©ÊÇÒ ......