在线客服
扫描二维码
下载博学谷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编码规范,可以把它看做是一种需要尽量去做的标准守则,而不是强制的命令要求。最后,希望大家都能写出优美动人,而有准确的编码。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
想成为高级Java程序员需要掌握哪些技能?
想成为高级Java程序员需要熟练掌握Java基础、Web开发、开发框架三大模块的相关知识。掌握J2EE基本语法熟练、面向对象思想,继承、多态、封装要理解、SSH框架要知道个大概、jacascript要会,html5和css要看的懂、开发工具Eclipse。
7562
2019-07-15 16:21:58
分布式版本控制Git工作原理是什么?
分布式版本控制Git适合分布式开发,强调个体;公共服务器压力和数据量不会太大;速度快灵活;任意两个开发者之间可以很容易的解决冲突;离线工作。 但学习周期相对而言比较长;不符合常规思维;代码保密性差,开发者把整个库克隆下来可以完全公开所有代码和版本信息。
5944
2020-02-20 17:10:36
大厂高级Java程序员必须学习什么?
大厂高级Java程序员必须学习什么?大厂招聘时要求会用 Netty,Netty 基本是Java语言处理网络IO的首选框架,性能和稳定性都有保障,Netty 各种特性都能够很好的支持和帮助业务快速发展。从电商、游戏、大数据、企业软件再到通信行业都有体现。
5120
2020-08-18 16:47:37
Java编程在线学习靠谱吗?能学会吗?
在线学习Java的方式靠不靠谱主要看机构的课程,和个人的努力情况。费用、时间上有压力建议选择在线学习,但在线学习对自控能力要求更高,坚持看完整期课程需要自律。如果找到一家靠谱的在线学习平台课程内容有保障,那么学习的方向不会出错。
3924
2020-10-23 11:13:05
30条实用MySQL优化法则
30条实用MySQL优化法则, 应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2684
2022-06-30 10:53:44