java±àÂë¹æ·¶_Îļþ×éÖ¯
×î½ü£¬¶Ô²¿ÃŵÄjava±àÂë¹æ·¶½øÐÐÁËÕû¶Ù£¬Ð´Á˱¾Îĵµ¹©´ó¼Ò²Î¿¼£¬ÇëÖ¸Õý¡£
1. ÎªÊ²Ã´ÒªÖÆ¶©±àÂë¹æ·¶
ºÃµÄ´úÂë·ç¸ñ²»½öÄÜÌá¸ß¿É¶ÁÐÔ£¬¶øÇÒ»áʹ´úÂë¸ü½¡×³£¬¸üÎªÖØÒªµÄÊÇÔÚÐÞ¸Äʱ²»ÈÝÒ׳ö´í¡£ÔÚÏÖ´úÈí¼þ¿ª·¢ÖУ¬Î¬»¤¹¤×÷»áÕ¼ÓÃ80%µÄʱ¼ä£¬¶øÇÒ¿ª·¢ÕߺÍά»¤Õßͨ³£²»ÊÇͬһ¸ö³ÌÐòÔ±¡£ÕâÒâζ×ÅÄã¾³£ÒªÔĶÁºÍÐÞ¸ÄËûÈË¿ª·¢µÄ³ÌÐò£¬ËûÈËҲͬÑù¿ÉÄÜÐèÒªÔĶÁºÍÐÞ¸ÄÄ㿪·¢µÄ³ÌÐò¡£¼ÈÈ»Èç´Ë£¬´ó¼ÒºÎ²»×ñÊØÒ»ÖµÄJAVA±àÂë¹æ·¶£¬°ÑÕâÀûÈËÀû¼ºµÄÊÂÇé×÷ºÃÄØ£¿
2. Îļþ×éÖ¯(File Organization)
Ò»¸öÎļþÓɱ»¿ÕÐÐ·Ö¸î¶ø³ÉµÄ¶ÎÂäÒÔ¼°±êʶÿ¸ö¶ÎÂäµÄ¿ÉѡעÊ͹²Í¬×é³É¡£³¬¹ý2000ÐеijÌÐòÄÑÒÔÔĶÁ£¬Ó¦¸Ã¾¡Á¿±ÜÃ⡣ÿ¸öJavaÔ´Îļþ¶¼°üº¬Ò»¸öµ¥Ò»µÄ¹«¹²Àà»ò½Ó¿Ú¡£Èô˽ÓÐÀàºÍ½Ó¿ÚÓëÒ»¸ö¹«¹²ÀàÏà¹ØÁª£¬¿ÉÒÔ½«ËüÃǺ͹«¹²Àà·ÅÈëͬһ¸öÔ´Îļþ¡£¹«¹²Àà±ØÐëÊÇÕâ¸öÎļþÖеĵÚÒ»¸öÀà»ò½Ó¿Ú¡£
2.1 ¿ªÍ·×¢ÊÍ(Beginning Comments)
ËùÓеÄjavaÎļþÔÚ¿ªÍ·¶¼Ó¦ÓÐ×¢ÊÍ£¬ÁгöÀàÃû¡¢°æ±¾ÐÅÏ¢¡¢ÈÕÆÚºÍ°æÈ¨ÉùÃ÷£º
/*
* Classname
*
* Version information
*
* Date
*
* Copyright notice
*/
2.2 °üºÍÒýÈëÓï¾ä(Package and Import Statements)
ÔÚ¶àÊýJavaÔ´ÎļþÖУ¬µÚÒ»¸ö·Ç×¢ÊÍÐÐÊǰüÓï¾ä¡£ÔÚËüÖ®ºó¿ÉÒÔ¸ú import Óï¾ä¡£importÖбê×¼µÄ°üÃûÒªÔÚ±¾µØµÄ°üÃû֮ǰ£¬¶øÇÒ°´ÕÕ×Öĸ˳ÐòÅÅÁС£Èç¹û import ÐÐÖаüº¬ÁËͬһ¸ö°üÖеIJ»Í¬×ÓĿ¼£¬ÔòÓ¦¸ÃÓà * À´´¦Àí¡£ÀýÈ磺
package java.awt;
import java.awt.peer.CanvasPeer;
2.3 Àà(Class)
Ê×ÏÈÊÇÀàµÄ×¢ÊÍ£¬Ò»°ãÊÇÓÃÀ´½âÊÍÀàµÄ¡£
/**
* A class representing a set of packet and byte counters
* It is observable to allow it to be watched, but only
* reports changes when the current set is complete
*/
½ÓÏÂÀ´ÊÇÀඨÒ壬°üº¬ÁËÔÚ²»Í¬µÄÐÐµÄ extends ºÍ implements
public class CounterSet extends Observable implements Cloneable{}
2.4 ÀàµÄ³ÉÔ±±äÁ¿(Class Fields)
/**
* Packet counters
*/
protected int[] packets;
public µÄ³ÉÔ±±äÁ¿±ØÐëÉú³ÉÎĵµ(JavaDoc)¡£proceted¡¢private ºÍ package ¶¨ÒåµÄ³ÉÔ±±äÁ¿Èç¹ûÃû×Öº¬ÒåÃ÷È·µÄ»°£¬¿ÉÒÔûÓÐ×¢ÊÍ¡£
2.5 ´æÈ¡·½·¨
½ÓÏÂÀ´ÊÇÀà±äÁ¿µÄ´æÈ¡µÄ·½·¨¡£ËüÖ»ÊǼòµ¥µÄÓÃÀ´½«
Ïà¹ØÎĵµ£º
Ŀǰ´ó¶àÊýʹÓÃgsonµÄ»¹ÒªÇóÔÚjavaÀàÖÐʹÓÃjava annotation£¬²»Íêȫ֧³ÖPOJO¡£
GsonÕâ¸öJavaÀà¿â¿ÉÒÔ°ÑJava¶ÔÏóת»»³ÉJSON£¬Ò²¿ÉÒÔ°ÑJSON×Ö·û´®×ª»»³ÉÒ»¸öÏàµÈµÄJava¶ÔÏó¡£GsonÖ§³ÖÈÎÒ⸴ÔÓJava¶ÔÏó°üÀ¨Ã»ÓÐÔ´´úÂëµÄ¶ÔÏó¡£
´úÂëÀý×Ó
/*
* To change this template, choose Tools | Templates
* and open the ......
class Super { static int taxi = 1729; }
class Sub extends Super {
static { System.out.print("Sub "); }
}
class Test {
public static void main(String[] args) {
System.out.println(Sub.taxi);
}
}
Êä³ö£º1729
֪ʶҪµã£º
A reference to a class field causes initialization of ......
´´½¨ÐÍģʽ
1¡¢FACTORY——×·MMÉÙ²»ÁËÇë³Ô·¹ÁË£¬Âóµ±À͵靈áºÍ¿ÏµÂ»ùµÄ¼¦³á¶¼ÊÇMM°®³ÔµÄ¶«Î÷£¬ËäÈ»¿ÚζÓÐËù²»Í¬£¬µ«²»¹ÜÄã´øMMÈ¥Âóµ±ÀÍ»ò¿ÏµÂ»ù£¬Ö»¹ÜÏò·þÎñԱ˵“À´Ëĸö¼¦³á”¾ÍÐÐÁË¡£Âóµ±ÀͺͿϵ»ù¾ÍÊÇÉú²ú¼¦³áµÄFactory
¹¤³§Ä£Ê½£º¿Í»§ÀàºÍ¹¤³§Àà·Ö¿ª¡£Ïû·ÑÕßÈκÎʱºòÐèҪijÖÖ²úÆ·£¬Ö»ÐèÏò¹ ......
Äú²éѯµÄ¹Ø¼ü´ÊÊÇ£ºnewinstance object initargs ¡£Èç¹û´ò¿ªËÙ¶ÈÂý£¬¿ÉÒÔ³¢ÊÔ¿ìËٰ棻Èç¹ûÏë±£´æ¿ìÕÕ£¬¿ÉÒÔÌí¼Óµ½ËѲء£
(°Ù¶ÈºÍÍøÒ³http://bbs.iaiai.com/forum/read.php?tid=2690µÄ×÷ÕßÎ޹أ¬²»¶ÔÆäÄÚÈݸºÔð¡£°Ù¶È¿ìÕÕ½÷ÎªÍøÂç¹ÊÕÏʱ֮Ë÷Òý£¬²»´ú±í±»ËÑË÷ÍøÕ¾µÄ¼´Ê±Ò³Ãæ¡£)
Ö÷Ìâ : javaµÄ·´Éä ......