视窗
loading...
您现在的位置:首页 > IT认证 > JAVA >

Java编程风格与命名规范整理


Java编程风格与命名规范整理

基本命名规范

    包命名

    包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反。

    由一组以“。”连接的标识符构成,通常第一个标识符为符合网络域名的两个或者三个英文小写字母。

    People  TestPage  XMLExample

    类,接口命名

    类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写例如TestPage;如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExample,还有一点命名技巧就是由于类是设计用来代表对象的,所以在命名类时应尽量选择名词。

    People  TestPage  XMLExample

    方法名

    方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头。可以为动词或动词+名词组合。

    设置/获取某个值的Method,应该遵循setV/getV规范

    返回长度的Method,应该命名为length

    测试某个布尔值的Method,应该命名为isV

    将对象转换为某个特定类型的Mehod应该命名为toF

    getDate();  length();  isReady();  toOracleFormat();

    变量名

    1.普通变量命名应该采用首字母小写,其他字母首字母大写的方式。

    2.final static变量的名字应该都大写,并且指出完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词如。

    NUM_DAYS_IN_WEEK  MAX_VALU

    3. 如果需要对变量名进行缩写时,一定要注意整个代码中缩写规则的一致性

    context=ctx  message=msg

    4. 通过在结尾处放置一个量词,就可创建更加统一的变量

    First(一组变量中的第一个)  Last(一组变量中的最后一个)  Next(一组变量中的下一个变量)  Prev(一组变量中的上一个)  Cur(一组变量中的当前变量)

    5. 无论什么时候,均提倡应用常量取代数字、固定字符串。也就是说,程序中除0,1以外,尽量不应该出现其他数字。

    6. 索引变量:i、j、k等只作为小型循环的循环索引变量。

    7. 逻辑变量:避免用flag来命名状态变量,用is来命名逻辑变量。

    if(isClosed){  dosomeworks;  return;  }

    数组

    总是使用以下方式定义数组:

    int[] arr = new int[10];

    禁止使用C语言的是形式:

    禁止  int arr[] = new int[10];

    集合

    数组或者容器推荐命名方式为名词+s的方式,例如:

    List persons = getPerson();  for(Person person : persons){  dosomeworks;  }

    泛型

    应该尽量简明扼要(最好是一个字母),以利于与普通的class或interface区分

    Container中的Element应该用E表示;Map里的key用K表示,value用V;Type用T表示;异常用X表示

    如果需要接收多个Type类型的参数,应该用邻接T的大写字母——例如S——来依次表示,当然也可以用T1, T2这样的方式

    public class HashSet extends AbstractSet {…}   public class HashMap extends AbstractMap {…}   public class ThreadLocal {…}   public interface Functor {       T val() throws X;   }

    推荐的命名

    1.当要区别接口和实现类的时候,可以在类的后面加上“Impl”。

    interface Container  class ContainerImpl

    2.Exception类最好能用“Exception”做为类命名的结尾

    DataNotFoundException  InvalidArgumentException

    3.抽象类最好能用“Abstract”做为类命名的开头

    AbstractBeanDefinition  AbstractBeanFactory

    4. Test类最好能用“Test”做为类命名的结尾

    ContainerTest

    5.简称与缩写(不推荐使用)

    cp代表colorPoint   buf代表buffer   off代表offset   len代表length

    除非是在循环中,否则一般不推荐使用单个字母作为变量名,不过也有例外,即约定俗成的单个字母

    b代表byte  c代表char  d代表double  e代表Exception   f代表float  i, j, k代表整数   l代表long  o代表Object   s代表String   v代表某些类型的特定值

    代码风格

    花括号

    花括号统一采用以下格式:

    if(bool experssion){  dosomework;  }

    除非花括号中为空,不然任何情况下不能省略花括号,并且花括号必须换行,例如:

    if(i==0){  return;  }  while(true) {}

    以下写法禁止出现:

    禁止  if(i != 0) return;  禁止  if(i !=0) {return;}

    括号

    括号的前,后一个字符不需要空格,例如:

    Person p = new Person(“Jack”, 17);

    空格

    逗号之后紧跟一个空格。

    Person p = new Person(“Jack”, 16, “China”);

    2. 二元操作符前后跟空格。

    int i = a + b – c * d;

    3. 一元操作符不需要空格,for语句分号后有空格。

    for(int i = 0; I < 10; i++){  dosomework;  }

    4. 括号前后不需要空格

    类

    类的定义结构按照顺序为:

    1) 常量

    2) 成员变量

    3) 构造函数

    4) 成员函数

    5) get和set方法

    各个部分之间留出一个空行。

    例如:

    规范类模板:

    class Person{      private final static int MAX_AGE = 100;       private String firstname = “Jack”;       public Person(){}  public Person(String firstname){      this.firstname = firstname;  }   public void doExercise(){      dosomeworks;      run();  }  private void run(){      dosomeworks;  }   public getFirstname(){      return firstname;  }  public setFirstname(String firstname){      this.firstname = firstname;  }  }

    2.构造函数

    1) 参数为空的构造函数出现在最上方

    2) 有调用关系的构造函数相邻

    3) 参数尽量由少到多从上至下排序

    3.使用成员变量

    在类的方法内引用成员变量了命名冲突以外,不使用this。非特殊情况在类的方法内都不使用get和set方法存取成员变量。

    4.方法

    有调用关系的方法尽量放在相邻的位置,public和private方法可以交叉放置。

    5.get和set方法,所有需要公开的成员变量都要符合良好的javabean规范,提供get和set方法,尽量使用IDE工具自动生成。

    Javadoc注释

    在每个程序的最开始部分,一般都用Javadoc注释对程序的总体描述以及版权信息,之后在主程序中可以为每个类、接口、方法、字段添加 Javadoc注释,每个注释的开头部分先用一句话概括该类、接口、方法、字段所完成的功能,这句话应单独占据一行以突出其概括作用,在这句话后面可以跟随更加详细的描述段落。在描述性段落之后还可以跟随一些以Javadoc注释标签开头的特殊段落,例如上面例子中的@auther和@version,这些段落将在生成文档中以特定方式显示

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞濞嗘挸绀夐柡鍥ュ灩閸屻劑鏌曢崼婵囧閻庢艾顭烽弻銊モ攽閸℃ê鐝旂紓浣瑰敾缂嶄線寮婚敓鐘茬妞ゆ劧瀵岄埀顒侇殜閺岀喖鎽庨崒姘ギ闂佽鍟崶褔鍞堕梺缁樻煥閹芥粎绮旈鍕厽闁绘ê寮堕幖鎰版煟鎺抽崝灞藉祫闂佺鎻粻鎴g箽闂備浇娉曢崳锕傚箯閿燂拷
闂傚倷绀侀幖顐︽偋濠婂牆绀堟繛鎴欏灪閸嬬喐銇勯弽顐沪闁绘帡绠栭弻鏇熺箾閸喖濮庨梺璇叉唉椤曆嗗絹闂佹悶鍎荤徊鑺ユ櫠閹绘崡褰掓偂鎼淬垹娈楅悗娈垮枛閻栧吋淇婇悜鑺ユ櫆闁告挆鍐帗婵犵數鍋涢悺銊у垝瀹€鈧懞閬嶆嚃閳哄嫬小婵炲鍘ч悺銊╁吹閸岀偞鐓涢柛鎰╁妼閳ь剝宕电划鏃囥亹閹烘挾鍙嗗┑鐐村灱濞呮洜鈧熬鎷�闂備浇顕уù鐑藉极閹间降鈧焦绻濋崑顖氱秺瀹曞崬螣鐠囧樊娼梻浣风串缁蹭粙寮甸鍕仼闁告鍊戞惔銊ョ倞闁挎繂鎳庨埛澶嬬箾鐎电ǹ甯堕柟铏耿閻涱喚鈧綆鍠栫粻锝嗙節婵犲倸顏柟鏋姂濮婃椽宕ㄦ繝鍐f嫻缂備礁顑嗙敮锟犲箚閸ャ劌顕遍柡澶嬪灥閸炪劑姊洪幖鐐插姌闁告柨绉归敐鐐哄冀椤儱閰e畷鍫曟晲閸涱厸鎷ゅ┑鐐差嚟閸樠囧箠濮椻偓楠炲棝宕橀鑲╊槹濡炪倖鍔戦崹娲儊閺冣偓缁绘繈濮€閿濆棛銆愰柣搴㈣壘閹芥粌危閹扮増鏅搁柨鐕傛嫹闂傚倷鑳堕幊鎾绘偤閵娾晛鍨傞柛鎰ゴ閸亪鏌熺€电ǹ小闁绘帒锕ら埞鎴︽偐閸欏鎮欏┑鐐叉噷閸ㄥ綊婀侀梺鎸庣箓濡盯鎯屾惔銊︾厓鐟滄粓宕滃▎鎾崇疇闁归偊鍏橀弸鏃堟煙鏉堥箖妾柛瀣儔閺屾盯顢曢妶鍛€剧紓鍌氱М閸嬫捇姊绘担鐟扮亰闁绘帪绠撴俊鐢告倷閻㈢數顦梺鍝勫暙閻楀棛鐥閺屾盯骞囬娑氥€婄紓浣插亾闁跨噦鎷�闂備浇顕х花鑲╁緤婵犳熬缍栧鑸靛姇閸ㄥ倹绻濇繝鍌氼伀妞も晠鏀遍妵鍕箳閹存繃娈茬紓浣风贰閸o絽顕i崼鏇熷€烽柛顭戝亝閻濐亜鈹戦悙鑼闁搞劌澧庣划姘舵焼瀹ュ懐鍔撮梺鍛婂壃閸涱垼妲繝鐢靛Х椤d粙鍩€椤掆偓閸熷潡鍩€椤掑倹鍤€闁挎洏鍨洪幏鍛村礈閹绘帗顓块梻浣呵归張顒傛崲瀹ュ鑸归柟缁㈠枟閻撴瑩鎮楀☉娆嬬細濠⒀屽墯缁绘繈鍩€椤掍焦濯撮柛锔诲幘閹虫繈姊洪崜鑼帥闁稿鎳愮槐鐐哄焵椤掑嫭鈷戦柣鐔稿閹界娀鏌eΔ鍐ㄤ户闁瑰箍鍨归~婵嬵敄閼恒儳浜欓梻浣告惈濞诧箓鎯岄鐐床闁糕剝绋掗悡娆愩亜閹炬鍟版禒鏉戭渻閵堝棙澶勯柛鎾跺枎閻g兘鏁愰崱娆戠槇闂佸憡鍔忛弲鈺佄i鐐粹拺闁奸€涘嵆閸濈儤鎱ㄦ繝鍌ょ吋闁哄苯鐗撻獮姗€顢欓懖鈺婂悈闂備胶鎳撻悺銊у垝瀹ュ洤鍨濋柨鏇炲€归悡銉︾箾閹寸倖鎴濓耿閻楀牏绡€闁逞屽墴楠炲秹顢欓幆褍瑙︽繝鐢靛仜濡霉妞嬪海鐜绘俊銈呭暟绾惧ジ鏌¢崒娑卞劌闁稿骸绻掗埀顒冾潐閹哥ǹ螞濠靛棛鏆︽慨妯垮煐閸嬫劗绱撴担璐細鐟滅増鍨垮娲箰鎼粹€虫灆闂佺懓鍤栭幏锟�闂備浇顕уù鐑藉极閹间礁绠犻柟鎹愬煐閺嗘粍銇勯幇鍓佺暠缂佲偓閸℃ḿ绠鹃柟瀵镐紳椤忓牆鏋侀柛顐f礃閸婄數鐥鐐村婵炲吋鍔欓弻娑㈠Ω閿斿墽鐓佺紓浣稿€圭敮锟犮€佸Δ浣瑰缂佸鏅濋锔解拺閻熸瑥瀚欢鑼磼缂佹ê鐏寸€殿噮鍋婇、娆撴偩瀹€濠冪カ婵犳鍠楅妵娑㈠磻閹剧粯鐓冪憸婊堝礈濞嗘挸纾归柛婵勫劤缁€濠囨倵閿濆骸鏋熼柛搴$Ч閺屾盯寮撮妸銉ョ瑢閻熸粎澧楃敮妤呮偂閳ь剙顪冮妶鍡楃瑨闁挎洩濡囩划鍫ユ晸閿燂拷闂傚倷娴囨竟鍫熴仈缁嬫娼栧┑鐘崇閻掗箖鏌熺紒銏犳灈婵☆偅锕㈤弻锝夋偄缁嬫妫嗙紒缁㈠幐閸嬫捇姊绘担鐟邦嚋缂佸甯掗悾婵嬪箹娴e摜锛涢梺鍝勭Р閸斿酣銆呴悜鑺ョ叆闁绘洖鍊圭€氾拷:webmaster@jscj.com闂傚倷绶氬ḿ褍螞瀹€鍕;闁瑰墽绮悡鐔搞亜椤愵偄骞樼紒浣哄厴閺岋綁鏁傜捄銊х厯闂佽桨绀佺粔褰掑极閹剧粯鏅搁柨鐕傛嫹4008816886

相关文章

无相关信息
更新时间2022-03-13 11:11:04【至顶部↑】
联系我们 | 邮件: webmaster@jscj.com | 客服热线电话:4008816886(QQ同号) |  濠电姷鏁搁崕鎴犵礊閳ь剚銇勯弴鍡楀閸欏繘鏌i幇顕呮毌闁稿鎹囬悰顕€宕归鍙ョ棯婵犵數濮崑鎾绘煕閵夋垵鑻▓顐㈩渻閵堝棙顥嗘い鏂匡功閹广垽鏁撻敓锟�

付款方式留言簿投诉中心网站纠错二维码手机版

客服电话: