知识大全 Java编程风格与命名规范整理

Posted 变量

篇首语:一个人使劲踮起脚尖靠近太阳的时候,全世界都挡不住她的阳光。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java编程风格与命名规范整理相关的知识,希望对你有一定的参考价值。

Java编程风格与命名规范整理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  基本命名规范

  包命名

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

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

  People  TestPage  XMLExample

  类 接口命名

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

  People  TestPage  XMLExample

  方法名

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

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

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

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

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

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

  变量名

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

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

  NUM_DAYS_IN_WEEK  MAX_VALU

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

  context=ctx  message=msg

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

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

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

   索引变量 i j k等只作为小型循环的循环索引变量

   逻辑变量 避免用flag来命名状态变量 用is来命名逻辑变量

  if(isClosed)  dosomeworks;  return; 

  数组

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

  int[] arr = new int[ ];

  禁止使用C语言的是形式

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

  集合

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

  List<Person> persons = getPerson()   for(Person person : persons)  dosomeworks; 

  泛型

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

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

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

  public class HashSet<E> extends AbstractSet<E> …   public class HashMap<K V> extends AbstractMap<K V> …   public class ThreadLocal<T> …   public interface Functor<T X extends Throwable>        T val() throws X;  

  推荐的命名

   当要区别接口和实现类的时候 可以在类的后面加上 Impl

  interface Container  class ContainerImpl

   Exception类最好能用 Exception 做为类命名的结尾

  DataNotFoundException  InvalidArgumentException

   抽象类最好能用 Abstract 做为类命名的开头

  AbstractBeanDefinition  AbstractBeanFactory

   Test类最好能用 Test 做为类命名的结尾

  ContainerTest

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

  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== )  return;    while(true)

  以下写法禁止出现

  禁止  if(i != ) return;  禁止  if(i != ) return;

  括号

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

  Person p = new Person( Jack )

  空格

  逗号之后紧跟一个空格

  Person p = new Person( Jack China )

    二元操作符前后跟空格

  int i = a + b – c * d;

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

  for(int i = ; I < ; i++)  dosomework; 

   括号前后不需要空格

  类

  类的定义结构按照顺序为

   ) 常量

   ) 成员变量

   ) 构造函数

   ) 成员函数

   ) get和set方法

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

  例如

  规范类模板

  class Person      private final static int MAX_AGE = ;       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;   

   构造函数

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

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

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

   使用成员变量

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

   方法

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

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

  Javadoc注释

cha138/Article/program/Java/hx/201311/26728

相关参考

知识大全 C++、Java与C#的命名规范总结

C++、Java与C#的命名规范总结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要由于在开

知识大全 C# 编程规范

C#编程规范  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一命名  用pascal规则来命名方

知识大全 编程规范-c语言的编程风格

 第一章:缩进格式  Tab是个字符于是缩进也是个字符有很多怪异的风格他们将缩进格式定义为个字符(设置为个字符!)的深度这就象试图将PI定义为一样让人难以接受  理由是:缩进的大小是为了清楚

知识大全 Oracle8 PL/SQL编程风格与系统性能的提高

Oracle8PL/SQL编程风格与系统性能的提高  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 Java的网络功能与编程

Java的网络功能与编程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要Java语言是Int

知识大全 Rails 开发与 Java 编程的比较

Rails开发与Java编程的比较  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  年月日&nbs

知识大全 Java 程序编码规范与技巧

Java程序编码规范与技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  java程序编码规范 

知识大全 javascript中的编程语言如何编码规范

  对于熟悉C/C++或Java语言的工程师来说javascript显得灵活简单易懂对代码的格式的要求也相对松散很容易学习并运用到自己的代码中也正因为这样javascript的编码规范也往往被轻视开发

知识大全 检查数据库数据字段命名规范与合法性的脚本

  做为一名开发DBA最重要的renweu是经常要检查开发人员或建模人员对数据库的命名规范是否严谨下文中将主要介绍一个检查数据库数据字段命名规范与合法性的脚本仅供大家参考  检查不符合数据库命名规范的

知识大全 Java网络编程-Java Socket编程(五)

Java网络编程-JavaSocket编程(五)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!