1java命名技巧
java命名技巧有哪些?类名必须使用名词,如果一个类名内含多个单词,那么各个单词第一个字母大写,后续字母小写,起伏呈驼峰状,人称驼峰式命名。给类名命名时,必须保证准确、简洁且容易理解。尽量使用完整单词,避免使用缩写词(除了大家公认的)
一般要求
1、选择有意义的名字,能快速地传达该类的用途。
2、参照java驼峰命名法,类名的首字母必须采用大写的形式,如果类名为多词组合而成的话,那么每个词的首字母必须采用大写。如:StudentAnswer.java
3、当要区别接口类和实现类的时候,可以在类的后面加上“Impl”。 如:接口类:UserInterface.java 接口实现类:UserInterfaceImpl
4、推荐实体类没有后缀名。
实际应用
应用系统中经常应用分层,Dao层(数据库访问)、Service层(业务处理)、Web层(页面控制action类),每一层的类的名称尽量带上该层后缀。
1、Dao层
a、接口类:采用JavaBean+Interface+Dao的形式来定义,即,实体对象+Interface+Dao。 如:用户对象接口类:UserInterfaceDao,其中xxx为模块名称。
b、实现类:采用JavaBean+Interface+Impl+Dao的形式来定义,即,实体对象 +Interface+Impl+Dao。如:用户对象实现类:UserInterfaceImplDao
2、Service层
a、接口类:采用Xxx+Interface+Service的形式来定义,即,模块+Interface+Service。 如:用户管理接口类:UserMsgInterfaceServiec
b、实现类:采用Xxx+Interface+Impl+Service的形式来定义,即,模块+Interface+Impl+Service。如:用户管理实现类:UserMsgInterfaceImplServiec
3、Web层(action类)
实现类:采用县Xxx+Operator+Action的形式来定义,即,模块+操作+Action。如:用户模块User+删除操作Delete+Action = UserDeleteAction
2java命名规范
1、 项目名全部小写
2、 包名全部小写
3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。
如:public class MyFirstClass{}
4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。
如:int index=0;
public void toString(){}
5、 常量名全部大写
如:public static final String GAME_COLOR=”RED”;
6、所有命名规则必须遵循以下规则:
1)、名称只能由字母、数字、下划线、$符号组成
2)、不能以数字开头
3)、名称不能使用JAVA中的关键字。
4)、坚决不允许出现中文及拼音命名。
3java变量命名规范
1.环境变量通常是指在操作系统中,用来指定操作系统运行时需要的一些参数
2.变量名以字母、下划线或者美元符(4上面的¥)开头,不能以数字开头,后面跟字母、下划线、美元符、数字,变量名对大小写敏感,无长度限制
驼峰命名法:
1.变量名应该用有意义的英文单词
2.变量名如果只有一个单词,则所有的字母小写
3.变量名如果由多个英文单词组成,则从第二个单词开始首字母大写
例如:
合法的变量命名:
1.Password
2.last_name
3.$abc
4._ref
正确的变量命名
1.password
2.lastName
3.在java中bool值用boolean表示,只有true和false两种,不能用0和非0,或空和非空表示。
4.java使用unicode字符码,意味着可以在java里面使用世界上的任意一种语言的字符集,用一个char类型变量可以存储一个汉字,即一个中文字符和英文字符所用的存储空间是一样的。
5.乱码的出现:用a字符集将汉字转换为编码,但系统用b字符集将编码转换为汉字时,将出现找不到编码,出现乱码。
4java方法命名规范
1、访问控制层(Controller 层)中的方法命名方向是简洁明了,向着自然化语言方向靠拢,比如“更新用户”,建议命名为“updateUser”,而非“updateUserById”,实际上我们更新用户一般都是根据主键 ID 来实现的,所以“updateUserById”更适宜放在 service 中;自然语言对于前端用户(包括对第三方提供服务)更加的友好,更加的自然贴切,自然亲和感更强、更舒适。
2、业务逻辑层(Service 层)的方法命名建议向我们程序员专业领域靠拢,向具体的实现细节倾斜,这样在出现了问题后方便我们快速跟着查找定位问题。比如“删除用户”操作,你一定想到了 Controller 中的建议命名为“deleteUser”,此处的 Service 建议命名为“deleteUserById”,这其实是贯彻了“由自然语言向专业领域渐进的原则(由抽象向具体递进原则)”。
3、数据访问层(DAO 层)中的方法命名就要更加的具体啦!对于“模糊查询用户列表”这样的操作,Controller 层建议命名为“queryUsers”,这利用了英语中单词尾部"+s"表示复数的语法;Service 层中建议命名为“queryUserList”,这一点和上一条将的一致,在 queryUserList 方法中由于要处理分页,对于 M有SQL5 这样的数据库而言,一般都需要我们写两条语句来完成此功能,一条是查询总记录数的,另一条是查询业务数据的,所以在数据库访问层(DAO 层)就会涉及到两个方法,建议的命名分别为“selectUserTotalCount”和“selectUserList”,相对于业务逻辑层(Service 层)就更加的具体、更加的明细,同时也遵循了 SQL 语法的规则,更利于代码定位。
4、从上面这三层的命名建议来看,我们其实都遵循了“由抽象向具体递进原则”。
5、类中的变量能用基本数据类型的,建议采用基本数据类型,这样的好处是内存开销更小、访问更快;原因是 JVM 中基本数据类型位于“JVM 方法栈”中,对象数据存储于“堆”中,在类初始化后变量就不会再改变了,而对象是在动态变化中,栈相对于堆而言,执行效率更高。