在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
在Java的入门过程中,我们首先要养成一个良好的编写代码习惯。那么,了解清楚Java的编码规范就显得尤为必要了。编码格式不仅仅是美不美观的问题。这里我们可以试想一下,如果在Java开发中编码不规范,容易出现bug不说,而且后续还难以维护。因此,遵守编码规范可以让代码的风格好像是一个人写出来的,即使是有很多人参与这个开发项目。

1、源文件基础
源文件以其最顶层的类名来命名,大小写敏感,文件扩展名为 .java。源文件编码格式为UTF-8。除了行结束符序列,ASCII水平空格字符(0x20,即空格)是源文件中唯一允许出现的空白字符,这意味着所有其它字符串中的空白字符都要进行转义;制表符不用于缩进。对于具有特殊转义序列的任何字符(\b, \t, \n, \f, \r, ", '及),我们使用它的转义序列,而不是相应的八进制(比如 \012)或Unicode(比如 \u000a)转义。对于剩余的非ASCII字符,是使用实际的Unicode字符(比如∞),还是使用等价的Unicode转义符(比如\u221e),取决于哪个能让代码更易于阅读和理解。
2、源文件结构
一个源文件包含(按顺序地):许可证或版权信息;package语句;import语句;一个顶级类。以上每个部分之间用一个空行隔开。如果一个文件包含许可证或版权信息,那么它应当被放在文件最前面。package语句不换行,列限制(4.4节)并不适用于package语句。import不要使用通配符,不要换行。
3、格式
大括号与 if,else,for,do,while语句一起使用,即使只有一条语句(或是空),也应该把大括号写上。对于非空块和块状结构,大括号遵循Kernighan和Ritchie风格,左大括号前不换行;左大括号后换行;右大括号前换行;如果右大括号是一个语句、函数体或类的终止,则右大括号后换行; 否则不换行。例如,如果右大括号后面是else或逗号,则不换行。一个空的块状结构里什么也不包含,大括号可以简洁地写成 {},不需要换行。例外:如果它是一个多块语句的一部分(if/else 或 try/catch/finally) ,即使大括号内没内容,右大括号也要换行。每当开始一个新的块,缩进增加2个空格,当块结束时,缩进返回先前的缩进级别。缩进级别适用于代码和注释。
4、空白
以下情况需要使用一个空行:类内连续的成员之间:字段,构造函数,方法,嵌套类,静态初始化块,实例初始化块;在函数体内,语句的逻辑分组间使用空行;类内的第一个成员前或最后一个成员后的空行是可选;要满足本文档中其他节的空行要求。除了语言需求和其它规则,并且除了文字,注释和Javadoc用到单个空格,单个ASCII空格也出现在以下几个地方:分隔任何保留字与紧随其后的左括号( ()(如 if,forcatch等);分隔任何保留字与其前面的右大括号( })(如 else,catch)等等。
5、命名约定
对所有标识符都通用的规则,标识符只能使用ASCII字母和数字,因此每个有效的标识符名称都能匹配正则表达式 \w+。类名都以 UpperCamelCase风格编写,方法名都以 lowerCamelCase风格编写;常量名命名模式为 CONSTANT_CASE,全部字母大写,用下划线分隔单词;非常量字段名以 lowerCamelCase风格编写;参数名以 lowerCamelCase风格编写;比起其它类型的名称,局部变量名可以有更为宽松的缩写。、
6、编程实践
只要是合法的,就把 @Override注解给用上。使用类名调用静态的类成员,而不是具体某个对象或表达式。极少会去重写 Object.finalize。
上面我们谈论的Java编码规范,可以把它看做是一种需要尽量去做的标准守则,而不是强制的命令要求。最后,希望大家都能写出优美动人,而有准确的编码。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
数据库性能如何优化?有哪些策略?
数据库性能如何优化?有哪些策略?谈到数据库的性能优化,这无疑是一个老生常谈的话题了。首先我们可以来看看影响数据库性能的因素,不外乎就是硬件、服务器系统、数据结构和SQL语句等等方面。下面我们来逐一针对这些可以进行优化的地方,详细分析一下具体的优化策略,感兴趣的朋友赶紧看下去吧!
6035
2020-02-21 17:48:44
提高Java开发效率的十个编程好习惯
对于刚刚入门学习Java编程语言的初学者而言,学习Java的基础语法固然重要,养成良好的编程习惯也是在一开始就需要注意的学习重点。只有在一开始建立好基础的习惯,才能在后期的Java开发中,提高自己的编码水平和效率。在这里小编整理了提高Java开发效率的十个编程好习惯供大家参考,下面一起来看看吧!
6495
2020-03-02 14:29:25
Java线程池ThreadPoolExecutor的原理解析
ThreadPoolExecutor里面使用到JUC同步器框架AbstractQueuedSynchronizer、大量的位操作、CAS操作。ThreadPoolExecutor提供了固定活跃线程、额外的线程、任务队列以及拒绝策略这几个重要的功能。下面我们一起来看看Java 线程池ThreadPoolExecutor的原理解析。
6032
2020-05-27 14:56:59
Java语言发展史及发展前景分析
Java语言发展史及发展前景分析,Java面向对象编程语言出生于1995年5月,Java功能强大和简单易用,应用领域非常广泛。Java语言具有安全、可靠等优势,且属于分布式、多线程和面向对象语言,对于这方面的人才需求量很大。
8020
2020-08-03 15:31:48
进阶Java中级程序员学习路线知识点汇总
企业对于中级程序员的任职要求:有两年以上Java开发经验,熟悉设计模式;熟练使用MySQL或Oracle数据库,熟练使用tomcat应用程序服务器;熟悉hibernate,spring,struts或ibatis 等主流技术框架;使用eclipse、svn、cvs、pl/sql等工具;有丰富的J2EE开发经验;有工业信息化开发经验或熟悉Modbus、OPC协议者优先。
7104
2020-08-28 16:11:03
