#java语言规范 ##语言的本质 任何一门语言都是用来交流的,都有自己的一套书写规范,Java 也不例外。不遵循规范,则会产生交流问题。 ##注重这些细节有几个好处 * 好的命名规范可以使得写出来的程序更容易被别人理解,更好维护。当然也易于自己理解,以便日后扩展。 * 同时,也使程序更规范和专业。 * 在这个人性化横行的今天,我们的Java命名规范也应该注重体验。共性和个性应该并存。共性则是专业、规范;个性则是每个人优秀思想的渗透。 * 了解命名规范,可以更好的学习和记忆 Java 类库中的类和函数等。 在命名规范里有很多都涉及到英文的,可以促进英文学习。 比如: numberMax, MaxNumber和maxNumber都是有区别的。 1. maxNumber可能是属性名 2. MaxNumber一般是类名 3. numberMax更倾向于方法。 这里也有一个英文的搭配问题。 比如:FileRead, FileReader, 这个显然后者作为类名好些。 readFile,fileRead, 这个显然前者作为方法更合适。 ##一些原则 下面的几个原则是编写 Java 程序必须遵守的 如果没有非常好的理由,永远不要违背他。 1. 包 由小写字母和少量数字组成 Java 自己的包以 java. 和 javax 开头,比如:java.awt 别的组织开发的包以 组织的 Internet 域名部分开头,比如:com.sun, com.borland 一些例子: com.aliasi.hmm; com.aliasi.classify; com.aliasi.cluster; com:组织; aliasi:具体的组织名或者个人; classify,cluter:包名(主题) org.apache.lucene; org.apache.lucene.analysis.standard; org.apache.nutch.ndfs; org.apache.nutch.fs; org.apache.nutch.db; org.apache.nutch.parse; 2. 类,接口 由一个或几个单词组成,每个单词的第一个字母大写,比如:StringBuffer 类:一般用名词和名词词组命名; IndexOptimizer.java; WebDbReader.java 接口:与类相同,可以使用形容词词缀,比如 Runnable, Comparable 3. 方法 除第一个字母小写外,和类,接口的命名规则一样。比如:getPersonInfo() 对于取属性值和设置属性值的方法: 不管是否是 Bean,都要遵循 JavaBean 命名规范:getXXX(), setXXX() 转换对象类型返回不同类型的方法: 命名成 toType,比如:toString(), toArray() 返回视图的方法: 命名成 asType() 形式,asList() 返回与调用此方法的对象(Wrapper Class)同值的原始类型的方法: 命名成 typeValue() 形式,比如 intValue(), floatValue() parseCharacterEncoding(String); 4. 域(属性) 普通域: 除第一个字母小写外,和类,接口的命名规则一样。比如:personInfo 常数域: 由一个或多个被下划线分开的单词组成,比如:VALUES, NEGATIVE_INTINITY 常数域是唯一允许使用下划线的情况。 5. 局部变量 命名与域相同,可以使用简写,比如:i, j, temp, maxNumber ##哲学? 定义一个类和一个方法并不是太复杂,当有非常多的类、方法、变量的时候才复杂,因为这些类既有区别,又有千丝万缕的继承和调用关系,这时候一致性设计,并易于理解和记忆,并方便扩展和调用则需要慢慢的体会了。 既然能用语言实现复杂的功能和体现伟大的思想,那么这门语言本身肯定也蕴育着很多哲学。 我的理解:它来源于生活,高于生活,又应用与生活。