java¹¹ÔìÆ÷
Ô×÷ÕߣºRobert Nielsen ÔÕ¾£ºwww.javaworld.com
¡¡¡¡ÎÒÃÇ˵¹¹ÔìÆ÷ÊÇÒ»ÖÖ·½·¨£¬¾ÍÏó½²°Ä´óÀûÑǵÄѼ×ìÊÞÊÇÒ»ÖÖ²¸È鶯Îï¡££¨°´£ºÀÏÍâϲ»¶´ò±ÈÓ÷£¬ÎÒÒ²¾ÍÕÕ×Å·Ò룩¡£ÒªÀí½âѼ×ìÊÞ£¬ÄÇôÏȱØÐëÀí½âËüºÍÆäËû²¸È鶯ÎïµÄÇø±ð¡£Í¬ÑùµØ£¬ÒªÀí½â¹¹ÔìÆ÷£¬ÄÇô¾ÍÒªÁ˽⹹ÔìÆ÷ºÍ·½·¨µÄÇø±ð¡£ËùÓÐѧϰjavaµÄÈË£¬ÓÈÆäÊǶÔÄÇЩҪÈÏÖ¤¿¼ÊԵģ¬Àí½â¹¹ÔìÆ÷ÊǷdz£ÖØÒªµÄ¡£ÏÂÃæ½«¼òµ¥½éÉÜһϠ£¬×îºóÓÃÒ»¸ö±í×÷ÁËЩ¼òµ¥µÄ×ܽᡣ
¡¡¡¡¹¦ÄܺÍ×÷ÓõIJ»Í¬
¡¡¡¡¹¹ÔìÆ÷ÊÇΪÁË´´½¨Ò»¸öÀàµÄʵÀý¡£Õâ¸ö¹ý³ÌÒ²¿ÉÒÔÔÚ´´½¨Ò»¸ö¶ÔÏóµÄʱºòÓõ½£ºPlatypus p1 = new Platypus();
¡¡¡¡Ïà·´£¬·½·¨µÄ×÷ÓÃÊÇΪÁËÖ´ÐÐjava´úÂë¡£
¡¡¡¡ÐÞÊηû£¬·µ»ØÖµºÍÃüÃûµÄ²»Í¬
¡¡¡¡¹¹ÔìÆ÷ºÍ·½·¨ÔÚÏÂÃæÈý¸ö·½±ãµÄÇø±ð£ºÐÞÊηû£¬·µ»ØÖµ£¬ÃüÃû¡£ºÍ·½·¨Ò»Ñù£¬¹¹ÔìÆ÷¿ÉÒÔÓÐÈκηÃÎʵÄÐÞÊΣº public, protected, private»òÕßûÓÐÐÞÊΣ¨Í¨³£±»package ºÍ friendlyµ÷Óã©. ²»Í¬ÓÚ·½·¨µÄÊÇ£¬¹¹ÔìÆ÷²»ÄÜÓÐÒÔÏ·ǷÃÎÊÐÔÖʵÄÐÞÊΣº abstract, final, native, static, »òÕß synchronized¡£
¡¡¡¡·µ»ØÀàÐÍÒ²ÊǷdz£ÖØÒªµÄ¡£·½·¨ÄÜ·µ»ØÈκÎÀàÐ͵ÄÖµ»òÕßÎÞ·µ»ØÖµ£¨void£©£¬¹¹ÔìÆ÷ûÓзµ»ØÖµ£¬Ò²²»ÐèÒªvoid¡£
¡¡¡¡×îºó£¬Ì¸Ì¸Á½ÕßµÄÃüÃû¡£¹¹ÔìÆ÷ʹÓúÍÀàÏàͬµÄÃû×Ö£¬¶ø·½·¨Ôò²»Í¬¡£°´ÕÕϰ¹ß£¬·½·¨Í¨³£ÓÃСд×Öĸ¿ªÊ¼£¬¶ø¹¹ÔìÆ÷ͨ³£Óôóд×Öĸ¿ªÊ¼¡£¹¹ÔìÆ÷ͨ³£ÊÇÒ»¸öÃû´Ê£¬ÒòΪËüºÍÀàÃûÏàͬ£»¶ø·½·¨Í¨³£¸ü½Ó½ü¶¯´Ê£¬ÒòΪËü˵Ã÷Ò»¸ö²Ù×÷¡£
¡¡¡¡"this"µÄÓ÷¨
¡¡¡¡¹¹ÔìÆ÷ºÍ·½·¨Ê¹Óùؼü×ÖthisÓкܴóµÄÇø±ð¡£·½·¨ÒýÓÃthisÖ¸ÏòÕýÔÚÖ´Ðз½·¨µÄÀàµÄʵÀý¡£¾²Ì¬·½·¨²»ÄÜʹÓÃthis¹Ø¼ü×Ö£¬ÒòΪ¾²Ì¬·½·¨²»ÊôÓÚÀàµÄʵÀý£¬ËùÒÔthisÒ²¾ÍûÓÐʲô¶«Î÷È¥Ö¸Ïò¡£¹¹ÔìÆ÷µÄthisÖ¸Ïòͬһ¸öÀàÖУ¬²»Í¬²ÎÊýÁбíµÄÁíÍâÒ»¸ö¹¹ÔìÆ÷£¬ÎÒÃÇ¿´¿´ÏÂÃæµÄ´úÂ룺
¡¡¡¡public class Platypus {
¡¡¡¡String name;
¡¡¡¡Platypus(String input) {
¡¡¡¡name = input;
¡¡¡¡}
¡¡¡¡Platypus() {
¡¡¡¡this("John/Mary Doe");
¡¡¡¡}
¡¡¡¡public static void main(String args[]) {
¡¡¡¡Platypus p1 = new Platypus("digger");
¡¡¡¡Platypus p2 = new Platypus();
¡¡¡¡}
¡¡¡¡}
¡¡¡¡ÔÚÉÏÃæµÄ´úÂëÖУ¬ÓÐ2¸ö²»Í¬²ÎÊýÁбíµÄ¹¹ÔìÆ÷¡£µÚÒ»¸ö¹¹ÔìÆ÷£¬¸øÀàµÄ³ÉÔ±name¸³Öµ£¬µÚ¶þ¸ö¹¹ÔìÆ÷£¬µ÷ÓõÚÒ»¸ö¹¹ÔìÆ÷£¬¸ø³ÉÔ±±äÁ¿nameÒ»¸ö³õʼֵ "John/Mary Doe".
¡¡¡¡ÔÚ¹¹ÔìÆ÷ÖУ¬Èç¹ûҪʹÓùؼü×Öthis,ÄÇô£¬±ØÐë·ÅÔÚµÚÒ»ÐУ¬Èç¹û²»ÕâÑù£¬½«µ¼ÖÂÒ»¸ö±àÒë´íÎó¡£
Ïà¹ØÎĵµ£º
Ŀ¼
1. ¼ò½é
2. °²×°
3. log4j»ù±¾¸ÅÄî
3.1. Logger
3.2. Appender
3.2.1. ʹÓÃConsoleAppender
3.2.2. ʹÓÃFileAppender
3.2.3. ʹÓÃWriterAppender
3.3. Layout
3.4. »ù±¾Ê¾Àý
3.4.1. SimpleLayoutºÍFileAppender
3.4.2. HTMLLayoutºÍWriterAppender
3.4.3. PatternLayoutºÍConsoleAppender
4. ʹÓÃÍⲿ ......
¶ÔÓÚѧϰstaticÎÒÃÇÏÈÀ´¿´Á½¸öÀý×Ó£º
//Example 1 Tst.java£¬no main() method
package com.blogchina.qb2049;
public class Tst
{
static { System.out.println("111111"); }
}
ÔËÐнá¹ûΪ: 111111
Exception in thread "main" java.lang.NoSuchMethodError: main
ͬÑùµÄµÀÀí¿´µÚ¶þ ......
Ò»¡¢ÔËÐÐclassÎļþ
Ö´Ðдømain·½·¨µÄclassÎļþ£¬ÃüÁîÐÐΪ£º
java <CLASSÎļþÃû>
×¢Ò⣺CLASSÎļþÃû²»Òª´øÎļþºó׺.class
ÀýÈ磺
java Test
Èç¹ûÖ´ÐеÄclassÎļþÊÇ´ø°üµÄ£¬¼´ÔÚÀàÎļþÖÐʹÓÃÁË£º
package <°üÃû>
ÄÇÓ¦¸ÃÔÚ°üµÄ»ù·¾¶ÏÂÖ´ÐУ¬ÃüÁîÐÐΪ£º
java <°üÃû>.CLASSÎļþ ......
Ê×ÏÈһЩ±»³õʼ»¯¶ÔÏóµÄ¸ÅÄ
Àà±äÁ¿£¨Àྲ̬³ÉÔ±£©£º Àà±»¼ÓÔØÊ±²úÉú£»ËüµÄÉú´æÆÚÊÇÀàµÄÉú´æÆÚ£»×Ô¶¯³õʼ»¯£¨Àà±»¼ÓÔØ£©
³ÉÔ±±äÁ¿£¨Àà³ÉÔ±£©£º ÔÚʹÓÃnew´´½¨¸ÃÀàʵÀýʱ²úÉú£»ËüµÄÉú´æÆÚÓë¸ÃÀàʵÀý¶ÔÏóµÄÉú´æÆÚÏàͬ£»
×Ô¶¯³õʼ»¯£¨¹¹Ôì·½·¨±»µ÷Óã©
¾Ö²¿±äÁ¿£¨ÀàµÄ·½·¨ÖеıäÁ¿£©£º ¸Ã·½·¨±»µ÷ÓÃÊ ......
¼òµ¥µÄ˵µ¥Àý¾ÍÊÇ Ö»ÄÜÓÐÒ»¸öʵÀý£¬ËùÒԵط½Óõ½µÄʵÀý¶¼ÊÇͬһ¸ö¡£
¾ÍºÃÏñ¼ÒÈ˳Է¹£¬×À×ÓÊǵ¥ÀýµÄ£¬´ó¼ÒÓõÄÊÇͬһ¸ö¡£¶øÍëÊǶàÀýµÄ£¬Ã¿È˶¼ÓÐ×Ô¼¸µÄ¡£ ÏÂÃæÊǾßÌåµÄÀý×Ó£º
Javaģʽ֮µ¥Àýģʽ£º
µ¥Àýģʽȷ±£Ò»¸öÀàÖ»ÓÐÒ»¸öʵÀý£¬×ÔÐÐÌṩÕâ¸öʵÀý²¢ÏòÕû¸öÏµÍ ......