Java命名规范和代码风格

基本命名规范

包命名

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

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

例:cn.edu.xupt.JavaTest

类,接口命名

类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写例如TestPage;

如果类名称中包含单词缩写,则这个缩写词的每个字母均应大写,如:XMLExample,还有一点命名技巧就是由于类是设计用来代表对象的,所以在命名类时应 尽量选择     名词。

  例:People TestPage XMLExample

方法名

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

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

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

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

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

  例:getDate(); length(); isReady(); toOracleFormat();

   变量名

1.普通变量命名应该全部采用小写字母。

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

  例:NUM_DAYS_IN_WEEK MAX_VALU

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

例:context=ctx message=msg

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

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

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

例:

if(isClosed){

dosomeworks;

return;

}

集合

数组或者容器推荐命名方式为名词+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<k, v=""> extends AbstractMap<k, v=""> {

}

public class ThreadLocal {

}

public interface Functor<t, throwable="" extends="" x=""> {

T val() throws X;

}

推荐的命名

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

  例:interface Container class ContainerImpl

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

  例:DataNotFoundException InvalidArgumentException

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

  例:AbstractBeanDefinition AbstractBeanFactory

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

例:ContainerTest

代码风格

 花括号

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

if(bool experssion){

dosomework;

}

除非花括号中为空,不然任何情况下不能省略花括号。

例如:

if(i==0){

return;

}

while(true){

}

  以下写法禁止出现:

禁止

if(i != 0)

return;

尽量不要

if(i !=0)

{

return;

}

 圆括号

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

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

 空格

  1.逗号之后紧跟一个空格。

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

2.圆括号里的分号后跟空格

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

dosomework;

}

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

  int i = a + b – c * d;

  4. 一元操作符不需要空格。

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

dosomework;

}

  5. 括号前后不需要空格

 类

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

  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;

}

}

 构造函数

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

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

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

 使用成员变量

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

 方法

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

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

Javadoc注释

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

转载于:https://www.cnblogs.com/csdndreamer/p/5490651.html

Java命名规范和代码风格相关推荐

  1. 修炼成高薪Java程序猿——从优秀的Java命名规范开始

    优秀的Java命名规范 1命名规范 1.1 package (*)  包名全部由小写的ASCII字母组成,用"."分隔.  在此项目中,所有的包均以"com.proste ...

  2. 关于java变量命名,介绍阿里JAVA命名规范及IDEA实时检测插件的使用以及CODELF取名神器

    JAVA开发中,我们经常会为如何来命名烦心. 有大神曾说计算机科学的两件难事:缓存失效和命名 的确,程序员最头疼的事:命名 但其实,有规范可以遵循.还有工具帮我们取名,更有插件帮我们实时检查是否违反规 ...

  3. Java 命名规范(非常全)

    欢迎关注方志朋的博客,回复"666"获面试宝典 在本文中,将从大到小,从外到内,总结Java编程中的命名规范.文中将会涉及到日常工作中常见的命名示例,如包命名,类命名,接口命名,方 ...

  4. Java 命名规范(非常全面)

    来源:https://www.ramostear.com/blog/2020/03/20/2vxdaqjq.html 最近发现很多初级程序员写代码时很不规范,比如方法名 类名 等,如果遇到有代码洁癖的 ...

  5. java标签组件命名_java编程规范之java命名规范

    想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正 在文章开始前,为方便阅读 ...

  6. Java命名规范--阿呆

    最近发现很多初级程序员写代码时很不规范,比如方法名 类名 等,如果遇到有代码洁癖的领导肯定会被骂(什么垃圾代码),下面分享一篇不错的规范文章 在本文中,将从大到小,从外到内,总结Java编程中的命名规 ...

  7. Java开发规范之代码格式篇(上)

    在程序员的世界里有两件最讨厌的事情,第一件事情是讨厌写代码注释,第二件事情是讨厌看别人的代码不写注释.虽然这只是个段子,但也反映了当下很多程序员的心声.下面简单介绍下代码规范的重要性,第一,规范的代码 ...

  8. java命名规范:驼峰命名法则

    java命名规范:驼峰命名法则 使用前注意事项: 1.由于Java面向对象编程的特性, 在命名时应尽量选择名词 2.驼峰命名法(Camel-Case): 当变量名或函式名是由一个或多个单字连结在一起, ...

  9. 访问控制权限和 ------java命名规范

    java中一共存在4中访问控制权限, 1.private 私有权限 2.default 默认访问权限 3.protected 属于受保护的访问权限.一个类中的成员如果使用了protected访问权限, ...

最新文章

  1. JAVA框架之Hibernate【配置文件详解】
  2. python语言有什么用-python语言的优势是什么
  3. mysql安装版和解压版哪个好_iqooneo3和小米10青春版哪个好 参数区别哪个性价比高...
  4. python相比于excel的优势_对照Excel使用Python进行数据分析,更快掌握
  5. SpringCloud 从菜鸟到大牛之四 应用通信 Feign Ribbon
  6. PostgreSQL备份之omniPITR
  7. 上传到服务器的图片访问的时候提示403 You don't have permission to access
  8. 最新:2021年度泰晤士世界大学学科排名公布
  9. ubuntu下安装matlab及配置vot-toolkit
  10. 证券secuerity英语
  11. win7安装OpenCV:计算机中丢失opencv_world300d.dll
  12. 领芯微基于LCM32F037吹风筒方案
  13. 前端css样式及选择器
  14. 自适应复化辛普森公式求积算法(C语言实现)
  15. 武汉大学和华科计算机系录取分数线,武汉大学各省份录取分数线,逐渐被华中科大拉开,分数却连年升高...
  16. 敬告青年---陈独秀
  17. 简单json解析(org.json解析方式)
  18. 凯云水利水电工程造价系统 (四) 配合比单价模块
  19. IDEA插件系列(64):Document Assistant插件——SpringMVC文档助手
  20. 南京计算机会计专业,理科全省位次5000名左右想学金融,师范,会计和计算机等专业应该怎么选?...

热门文章

  1. Vim/GVim格式化xml文件
  2. 前端小知识点(6):听了好多闭包,这次可能最懂
  3. 硬核!原型和原型链详解
  4. [html] 写一个布局,当页面滚动一定高时,导航始终固定在顶部,反之恢复原位
  5. [css] span与span之间有看不见的空白间隔是什么原因引起的?有什么解决办法?
  6. 工作308:uni-设置请求参数
  7. 前端学习(2760):image基本使用
  8. 前端学习(2530):使用computed获取数据
  9. 前端学习(2470):echart复习电商管理通过erchart基本使用
  10. “约见”面试官系列之常见面试题第二十四篇之vue-router使用(建议收藏)