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¸ö¿Õ¸ñ)»áʹÓï¾äÌå¿´Æð
Ïà¹ØÎĵµ£º
Ŀǰ´ó¶àÊýʹÓÃgsonµÄ»¹ÒªÇóÔÚjavaÀàÖÐʹÓÃjava annotation£¬²»Íêȫ֧³ÖPOJO¡£
GsonÕâ¸öJavaÀà¿â¿ÉÒÔ°ÑJava¶ÔÏóת»»³ÉJSON£¬Ò²¿ÉÒÔ°ÑJSON×Ö·û´®×ª»»³ÉÒ»¸öÏàµÈµÄJava¶ÔÏó¡£GsonÖ§³ÖÈÎÒ⸴ÔÓJava¶ÔÏó°üÀ¨Ã»ÓÐÔ´´úÂëµÄ¶ÔÏó¡£
´úÂëÀý×Ó
/*
* To change this template, choose Tools | Templates
* and open the ......
ÏÈд³ÌÐò£¬ÔÚÀ´½âÊͼòµ¥¹¤³§ºÍ¹¤³§·½·¨Ä£Ê½¡£
1¡¢¶¨ÒåÒ»¸öÆû³µ½Ó¿Ú
package com.beckham.factory;
/**
* @author ×÷Õß<Beckham>
* Email:gaowm0207@gmail.com
* Jan 26, 2010 2:35:15 PM
* Version:1.0
*/
public interface Car {
public void start() ;
}
½Ó¿ÚÀïÃæ¶¨ÒåÒ»¸ö·½·¨£ºstart( ......
JavaÓÐÁ½ÖÖThread£º“ÊØ»¤Ïß³ÌDaemon”Óë“Óû§Ïß³ÌUser”¡£
ÎÒÃÇ֮ǰ¿´µ½µÄÀý×Ó¶¼ÊÇÓû§£¬ÊØ»¤Ïß³ÌÊÇÒ»ÖÖ“ÔÚºǫ́ÌṩͨÓÃÐÔÖ§³Ö”µÄỊ̈߳¬Ëü²¢²»ÊôÓÚ³ÌÐò±¾Ìå¡£
´Ó×ÖÃæÉÏÎÒÃǺÜÈÝÒ×½«ÊØ»¤Ïß³ÌÀí½â³ÉÊÇÓÉÐéÄâ»ú£¨virtual machine£©ÔÚÄÚ²¿´´½¨µÄ£¬¶øÓû§Ïß³ÌÔòÊÇ×Ô¼ºËù´´½¨µÄ¡£ÊÂʵ²¢²»Ê ......
Äú²éѯµÄ¹Ø¼ü´ÊÊÇ£ºnewinstance object initargs ¡£Èç¹û´ò¿ªËÙ¶ÈÂý£¬¿ÉÒÔ³¢ÊÔ¿ìËٰ棻Èç¹ûÏë±£´æ¿ìÕÕ£¬¿ÉÒÔÌí¼Óµ½ËѲء£
(°Ù¶ÈºÍÍøÒ³http://bbs.iaiai.com/forum/read.php?tid=2690µÄ×÷ÕßÎ޹أ¬²»¶ÔÆäÄÚÈݸºÔð¡£°Ù¶È¿ìÕÕ½÷ÎªÍøÂç¹ÊÕÏʱ֮Ë÷Òý£¬²»´ú±í±»ËÑË÷ÍøÕ¾µÄ¼´Ê±Ò³Ãæ¡£)
Ö÷Ìâ : javaµÄ·´Éä ......
ºÜ¶àÈ˶¼ÖªµÀÔÚswingÖмÓÈëjPopupMenu×é¼þºó¿ÉÒÔÔÚÊó±êµÄÇý¶¯ÏÂ̽³öÒ»¸ö²Ëµ¥£¬µ«ÊÇ£¬Èç¹ûÓÃÒ»°ã×ö·¨£¬ÔÚ½çÃæÉϵ¥»÷×ó¼üÒ²»áµ¯³ö²Ëµ¥£¬ÄÇôÓÐûÓа취ÔÚÖ»Óе¥»÷ÓÒ¼ü²Åµ¯³ö²Ëµ¥ÄØ£¿ÆäʵֻÊÇÓõ½ÁËÒ»¸öС¼¼ÇÉ¡£ ÄãµÄµ¯³öÊó±ê²Ëµ¥Êó±êÇý¶¯Ñ¡Ôñ MouseReleased È»ºóÔÙÔÚ¼àÌýʼþµÄ·½·¨ÖмÓÈëÏÂÃæµÄ´úÂë¾Í¿ÉÒÔÁË£º if(evt.isPop ......