java±àÂë¹æ·¶_Ëõ½øºÍ×¢ÊÍ
1. Ëõ½øÅŰæ(Indentation)
4¸ö¿Õ¸ñ³£±»×÷ΪËõ½øÅŰæµÄÒ»¸öµ¥Î»¡£Ëõ½øµÄÈ·ÇнâÊͲ¢Î´Ïêϸָ¶¨(¿Õ¸ñ vs. ÖÆ±í·û)¡£Ò»¸öÖÆ±í·ûµÈÓÚn¸ö¿Õ¸ñ(ÊÓ¾ßÌåµÄ±à¼Æ÷¶ø¶¨£¬EclipseĬÈÏÒ»¸öÖÆ±í·ûΪ4¸ö×Ö·û)¡£
3.1 Ð㤶È(Line Length)
¾¡Á¿±ÜÃâÒ»Ðеij¤¶È³¬¹ý80¸ö×Ö·û£¬ÒòΪºÜ¶àÖն˺͹¤¾ß²»Äܺܺô¦ÀíÖ®¡£
×¢Ò⣺¼øÓÚEclipse¿ª·¢¹¤¾ß¹¤×÷ÇøµÄ×ó²àºÍÓҲ඼±»·Ç´úÂë±à¼Æ÷ËùÕ¼¾Ý£¬Òò´Ë½¨ÒéÿÐеĴúÂ볤¶È²»Òª³¬¹ý70¸ö×Ö·û¡£
3.2 »»ÐÐ(Wrapping Lines)
µ±Ò»¸ö±í´ïʽÎÞ·¨ÈÝÄÉÔÚÒ»ÐÐÄÚʱ£¬¿ÉÒÔÒÀ¾ÝÈçÏÂÒ»°ã¹æÔò¶Ï¿ªÖ®£º
·ÔÚÒ»¸ö¶ººÅºóÃæ¶Ï¿ª£»
·ÔÚÒ»¸ö²Ù×÷·ûÇ°Ãæ¶Ï¿ª£»
·Äþ¿ÉÑ¡Ôñ½Ï¸ß¼¶±ð(higher-level)µÄ¶Ï¿ª£¬¶ø·Ç½ÏµÍ¼¶±ð(lower-level)µÄ¶Ï¿ª£»
·ÐµÄÒ»ÐÐÓ¦¸ÃÓëÉÏÒ»ÐÐͬһ¼¶±ð±í´ïʽµÄ¿ªÍ·´¦¶ÔÆë¡£
·Èç¹ûÒÔÉϹæÔòµ¼ÖÂÄãµÄ´úÂë»ìÂÒ»òÕßʹÄãµÄ´úÂë¶¼¶Ñ¼·ÔÚÓұߣ¬ÄǾʹúÖ®ÒÔËõ½ø8¸ö¿Õ¸ñ£¬»òÕßÒÔµ÷ÓòÎÊýµÄÊ׸öÀ¨ºÅ¶ÔÆë£¬»òÕßÒÔÊ׸öÔËËã·¨¶ÔÆë¡£
ÒÔÏÂÊǶϿª·½·¨µ÷ÓõÄһЩÀý×Ó£º
someMethod(longExpression1, longExpression2, longExpression3, longExpression4,
longExpression5);
var = someMethod1(longExpression1,
someMethod2(longExpression2, longExpression3));
ÒÔÏÂÊÇÁ½¸ö¶Ï¿ªËãÊõ±í´ïʽµÄÀý×Ó¡£Ç°Õ߸üºÃ£¬ÒòΪ¶Ï¿ª´¦Î»ÓÚÀ¨ºÅ±í´ïʽµÄÍâ±ß£¬ÕâÊǸö½Ï¸ß¼¶±ðµÄ¶Ï¿ª¡£
longName1 = longName2 * ( longName3 + longName4 - longName5 ) +
4 * longname6; //ÍÆ¼öʹÓÃ
longName1 = longName2 * ( longName3 + longName4
- longName5 ) + 4 * longname6; //Ó¦±ÜÃâÕâÑùʹÓÃ
ÒÔÏÂÊÇÁ½¸öËõ½ø·½·¨ÉùÃ÷µÄÀý×Ó¡£Ç°ÕßÊdz£¹æÇéÐΡ£ºóÕßÈôʹÓ󣹿µÄËõ½ø·½Ê½½«»áʹµÚ¶þÐк͵ÚÈýÐÐÒÆµÃºÜ¿¿ÓÒ£¬ËùÒÔ´úÖ®ÒÔËõ½ø¿Õ¸ñ£¬¾¡Á¿ÓëÔËËã·û»òÕßÀ¨ºÅ¶ÔÆë¡£
//CONVENTIONAL INDENTATION
someMethod(int anArg, Object anotherArg, String yetAnotherArg,
Object andStillAnother) {
...
}
//INDENT 8 SPACES TO AVOID VERY DEEP INDENTS
private static synchronized horkingLongMethodName(int anArg,
Object anotherArg, String yetAnotherArg, Object andStillAnother) {
...
}
ifÓï¾äµÄ»»ÐÐͨ³£Ê¹ÓÃ8¸ö¿Õ¸ñµÄ¹æÔò£¬ÒòΪ³£¹æËõ½ø(4¸ö¿Õ¸ñ)»áʹÓï¾äÌå¿´Æð
Ïà¹ØÎĵµ£º
/************************************************
MD5 Ëã·¨µÄJava Bean
*************************************************/
package beartool;
import java.lang.reflect.*;
public class MD5 {
/* ÏÂÃæÕâЩS11-S44ʵ¼ÊÉÏÊÇÒ»¸ö4*4µÄ¾ ......
ÔÚDevoxx 2009£¨Ò»ÄêÒ»¶ÈµÄJavaÉçÇø´ó»á£¬½ñÄêÔÚ11ÔÂ16-20ÈÕ¾ÙÐУ©ÉÏ£¬SunÐû²¼½«ÔÚJDK 7ÖÐÔö¼Ó±Õ°ü¹¦ÄÜ¡£Õâ¸ö¹¦ÄܵÄÌí¼Ó½«´ÓFCM v0.5£¨First-Class Methods£¬µÚÒ»Àà·½·¨£©µÄÓï·¨ºÍÓïÒ⿪ʼ×ÅÊÖ¡£FCMÓëJCAÔ±¾Ò»Í¬±»Ìá½»£¬È»¶øSunÐû²¼JCA½«²»ÔÚJDK 7Öп¼ÂÇ¡£
ͬʱ£¬Sun±íʾJava 7µÄ·¢²¼Ê±¼ä½«±»ÍƳÙÖÁ2010Äêµ×¡£ ......
ÐòÁл¯µÄ¹ý³Ì¾ÍÊǽ«¶ÔÏóдÈë×Ö½ÚÁ÷ºÍ´Ó×Ö½ÚÁ÷ÖжÁÈ¡¶ÔÏó¡£½«¶ÔÏó״̬ת»»³É×Ö½ÚÁ÷Ö®ºó£¬¿ÉÒÔÓÃjava.io°üÖеĸ÷ÖÖ×Ö½ÚÁ÷ÀཫÆä±£´æµ½ÎļþÖУ¬¿ÉÒÔͨ¹ý¹ÜµÀ»òÏ̶߳ÁÈ¡£¬»òͨ¹ýÍøÂçÁ¬½Ó½«¶ÔÏóÊý¾Ý·¢Ë͵½ÁíÒ»Ö÷»ú¡£¶ÔÏóÐòÁл¯¹¦Äܷdz£¼òµ¥¡¢Ç¿´ó£¬ÔÚRMI¡¢Socket¡¢JMS¡¢EJB¶¼ÓÐÓ¦Ó᣶ÔÏóÐòÁл¯ÎÊÌâÔÚÍøÂç±à³ÌÖв¢²»ÊÇ×¶¯ÈË ......
[ÕªÒª]
ÌáÆðJavaÄÚ²¿ÀࣨInner
Class£©¿ÉÄܺܶàÈ˲»Ì«ÊìϤ£¬Êµ¼ÊÉÏÀàËÆµÄ¸ÅÄîÔÚC++ÀïÒ²ÓУ¬ÄǾÍÊÇǶÌ×ÀࣨNested
Class£©£¬¹ØÓÚÕâÁ½ÕßµÄÇø±ðÓëÁªÏµ£¬ÔÚÏÂÎÄÖлáÓжԱȡ£
[¹Ø¼ü×Ö] Java
ÄÚ²¿Àà
ÄäÃûÀà
¡¡¡¡ÓÐÈË»áÎÊ£¬Èç¹ûÄÚ²¿ÀàÀïµÄÒ»¸ö³ÉÔ±±äÁ¿ÓëÍⲿÀàµÄÒ»¸ö³ÉÔ±±äÁ¿Í¬Ãû£¬Ò²¼´ÍⲿÀàµÄͬÃû³ÉÔ±±äÁ¿±»ÆÁ±ÎÁ ......
1. JavaÖгýÁËstaticºÍfinal·½·¨Í⣬ÆäËûËùÓеķ½·¨¶¼ÊÇÔËÐÐʱ°ó¶¨µÄ¡£private·½·¨¶¼±»Òþʽָ¶¨ÎªfinalµÄ£¬Òò´ËfinalµÄ·½·¨²»»áÔÚÔËÐÐʱ°ó¶¨¡£µ±ÔÚÅÉÉúÀàÖÐÖØÐ´»ùÀàÖÐstatic¡¢final¡¢»òprivate·½·¨Ê±£¬ÊµÖÊÉÏÊÇ´´½¨ÁËÒ»¸öÐµķ½·¨¡£
2.ÔÚÅÉÉúÀàÖУ¬¶ÔÓÚ»ùÀàÖеÄpr ......