Java±à³ÌÄÇЩʶù68——³éÏóÀàºÍ½Ó¿Ú(Ò»)
8.9 ³éÏóÀàºÍ½Ó¿Ú
ÔÚʵ¼ÊµÄÏîÄ¿ÖУ¬Õû¸öÏîÄ¿µÄ´úÂëÒ»°ã¿ÉÒÔ·ÖΪ½á¹¹´úÂëºÍÂß¼µÄ´úÂë¡£¾ÍÏñ½¨Ôì·¿ÎÝʱ£¬ÐèÒªÊ×ÏȴÕû¸ö·¿ÎݵĽṹ£¬È»ºóÔÙϸ»¯·¿ÎÝÏà¹ØµÄÆäËüµÄ½á¹¹£¬Ò²ÏñÖÆÔìÆû³µÊ±£¬ÐèÒªÊ×ÏÈÖÆ×÷Æû³µµÄ¿ò¼Ü£¬È»ºó²ÅÊǰ²×°Åä¼þÒÔ¼°ÃÀ»¯µÈ¹¤×÷¡£³ÌÐòÏîÄ¿µÄʵÏÖÒ²×ñÑͬÑùµÄµÀÀí¡£
ÔÚÏîÄ¿Éè¼ÆÊ±£¬Ò»¸ö»ù±¾µÄÔÔò¾ÍÊÇ——“Éè¼ÆºÍʵÏÖÏà·ÖÀ딡£Ò²¾ÍÊÇ˵½á¹¹´úÂëºÍÂß¼´úÂëµÄ·ÖÀ룬¾ÍÏñÉè¼ÆÆû³µÊ±Ö»ÐèÒª¹Ø×¢Æû³µµÄÏà¹Ø²ÎÊý£¬¶ø²»±Ø¹ýÓÚ¹ØÐÄÈçºÎʵÏÖÕâЩҪÇóµÄÖÆ×÷¡£³ÌÐòÉè¼ÆÊ±Ò²ÊÇÊ×ÏÈÉè¼ÆÏîÄ¿µÄ½á¹¹£¬¶ø²»Óùý¶àµÄ¹ØÏµÃ¿¸öÂß¼µÄ´úÂëÈçºÎ½øÐÐʵÏÖ¡£
Ç°Ãæ½éÉܵÄÁ÷³Ì¿ØÖÆÖªÊ¶£¬Ö÷Òª½â¾öµÄÊÇÂß¼µÄ´úÂëµÄ±àд£¬¶øÀàºÍ¶ÔÏóµÄ֪ʶ£¬ÔòÖ÷Òª½â¾ö½á¹¹´úÂëµÄ±àд¡£ÄÇô»¹ÓÐÒ»¸öÖ÷ÒªµÄÎÊÌ⣺ÈçºÎÉè¼Æ½á¹¹´úÂëÄØ£¿Õâ¾ÍÐèҪʹÓÃÏÂÃæ½éÉܵijéÏóÀàºÍ½Ó¿ÚµÄ֪ʶÁË¡£
8.9.1 ³éÏóÀà
³éÏóÀà(Abstract Class)ÊÇָʹÓÃabstract¹Ø¼ü×ÖÐÞÊεÄÀ࣬Ҳ¾ÍÊÇÔÚÉùÃ÷Ò»¸öÀàʱ¼ÓÈëÁËabstract¹Ø¼ü×Ö¡£³éÏóÀàÊÇÒ»ÖÖÌØÊâµÄÀ࣬ÆäËüδʹÓÃabstract¹Ø¼ü×ÖÐÞÊεÄÀàÒ»°ã³Æ×÷ʵÌåÀà¡£ÀýÈ磺
public abstract class A{
public A(){}
}
³éÏó·½·¨(Abstract Method)ÊÇָʹÓÃabstract¹Ø¼ü×ÖÐÞÊεķ½·¨¡£³éÏó·½·¨ÊÇÒ»ÖÖÌØÊâµÄ·½·¨£¬ÆäËüδʹÓÃabstract¹Ø¼ü×ÖÐÞÊεķ½·¨Ò»°ã³Æ×÷ʵÌå·½·¨¡£
public abstract void test();
³éÏóÀàºÍʵÌåÀàÏà±È£¬Ö÷ÒªÓÐÒÔÏÂÁ½µã²»Í¬£º
l ³éÏóÀ಻ÄÜʹÓÃ×ÔÉíµÄ¹¹Ôì·½·¨´´½¨¶ÔÏó(Óï·¨²»ÔÊÐí)
ÀýÈçÏÂÃæµÄÓï·¨ÊÇ´íÎóµÄ£º
A a = new A();
µ«ÊdzéÏóÀà¿ÉÒÔÉùÃ÷¶ÔÏó£¬ÀýÈçÏÂÃæµÄ´úÂëÊÇÕýÈ·µÄ£º
A a;
&nb
Ïà¹ØÎĵµ£º
ÖÚËùÖÜÖª£¬ÔÚ³ÌÐò¿ª·¢ÖУ¬ÄÑÃâ»áÓöµ½ÐèҪƥÅä¡¢²éÕÒ¡¢Ìæ»»¡¢ÅжÏ×Ö·û´®µÄÇé¿ö·¢Éú£¬¶øÕâЩÇé¿öÓÐʱÓֱȽϸ´ÔÓ£¬Èç¹ûÓô¿±àÂ뷽ʽ½â¾ö£¬ÍùÍù»áÀ˷ѳÌÐòÔ±µÄʱ¼ä¼°¾«Á¦¡£Òò´Ë£¬Ñ§Ï°¼°Ê¹ÓÃÕýÔò±í´ïʽ£¬±ã³ÉÁ˽â¾öÕâһì¶ÜµÄÖ÷ÒªÊֶΡ£
´ó¼Ò¶¼ÖªµÀ£¬ÕýÔò±í´ïʽÊÇÒ»ÖÖ¿ÉÒÔÓÃÓÚģʽƥÅäºÍÌæ»»µÄ¹æ·¶£¬Ò»¸öÕýÔò±í´ïʽ¾ÍÊÇÓÉÆÕͨµ ......
javaÖеķ´Éä¾³£±»ÓÃÔÚһЩ¿ò¼Ü´î½¨ÉÏ£¬ËûÄܹ»ÈÃÎÒÃǺܷ½±ãµÄ¶Ô×Ô¼ºÎ´À´½«Ê¹ÓõÄÀ࣬·½·¨ºÍ±äÁ¿½øÐзÃÎÊ¡£¸öÈ˾õµÃÓÐÖֺڿ͵ÄζµÀÔÚÀïÃæ¡£µ±ÎÒÃÇÖªµÀÒ»¸öÀàµÄÀàÃûºó£¬ÎÒÃÇ»ù±¾ÉÏ¿ÉÒÔʹÓ÷´ÉäµÄµ½ËüµÄÒ»ÇС£°üÀ¨ËûµÄprivateµÄ·½·¨ºÍ±äÁ¿µÈ(µ±È»·ÃÎÊËûÃǵÄʹÓÃÐèҪʹÓõÄÊÇgetDeclared***(**))¡£ÁíÍ⣬¾Ý ......
1£©À¬»ø»ØÊÕµÄÁ½¸ö¹Ø¼üÒªËØ£º
·¢ÏÖÎÞÓöÔÏó¡£
»ØÊÕÎÞÓöÔÏóµÄÄÚ´æ¿Õ¼ä¡£
2£©6ÖÖÀ¬»ø»ØÊÕËã·¨£º
ÒýÓüÆÊý·¨£¬tracing Ëã·¨£¬compactingËã·¨£¬copying Ëã·¨£¬generationËã·¨£¬adaptiveËã·¨¡£
3£©detail£º
ÒýÓüÆÊý·¨(Reference Counting Collector)
ÒýÓüÆÊý·¨ÊÇΨһûÓÐʹÓøù¼¯µÄÀ¬»ø»ØÊÕµÄ ......
ʵ¼ÊÉÏ£¬ÎÒ¹ØÓÚjavaµÄ»ù´¡ÖªÊ¶µÄ90%ÒÔÉ϶¼À´×ÔThinking in Java¡£¶ÔÓÚÆäÖеÄsynchronized¹Ø¼ü×Ö£¬µ±Ê±¾ÍÊÇä¯ÀÀһϣ¬´ó¸ÅÖªµÀÒâ˼£¬Ò²Ã»ÓÐϸ¿´¡£ºóÀ´Ò»Ö±Ã»ÓÐÓùýÕâ¸ö¹Ø¼ü×Ö¡£×òÌì¿´Thinking in Patterns with JavaÖеÄObserverģʽ£¬¿´ÁËÆäÖеÄObservableÀàµÄÔ´Â룬·¢ÏÖÀïÃæ¼¸ºõËùÓеķ½·¨¶¼ÓÃÁËsynchronized¹Ø¼ü×Ö£¨²»ÊÇÈ ......
SAMPLE£º
import java.util.Properties;
Properties props=System.getProperties(); //»ñµÃϵͳÊôÐÔ¼¯
String osName = props.getProperty("os.name"); //²Ù×÷ϵͳÃû³Æ
String osArch = props.getPropert ......