【精致Java教程】16:代码规范(一)

首先补充几个小知识:

  • 表达式:也就是数学里的算式,例如float r = 3是个表达式。double c = 2 * 3.14 * r也是个表达式。
  • 语句:表达式结尾加上分号“;”就是语句,Java的每个语句都是用“;”结尾的。例如flout r = 3;。
  • 标示符:代码中所有名字都叫做标示符,例如类名、方法名和变量名。
  • 在代码中有两种常用的命名法,一种叫帕斯卡命名法,一种叫驼峰命名法。
  • 帕斯卡命名法:标示符每个单词的首字母大写,例如:UserName。
  • 驼峰命名法:标示符小写,如果由多个单词组成,则除了第一个单词,其它每个单词的首字母大写。例如:userName。

标示符的命名规范###

在Java中可以用Unicode字符集中的字符来当变量名。但是要遵守以下两条规则,否则编译会不通过:
1.不能使用纯数字或者以数字开头。
2.不能使用Java语法中已经占用的关键字,Java有以下50个关键字:


基本数据类型:byte short int long float double boolean char null true false
访问权限:private protected public
类、方法和变量修饰符:class interface static abstract final strictfp synchronized native transient volatile extends implements new
流程控制:if else for do while break continue switch case return instanceof
异常处理:try catch throw throws
包:import package
对象引用:super this void
保留字:goto const

例如以下这样的编译会报错:


public class double { //以关键字作为类名
int 2333; //变量名是纯数字

通常情况下,即使编译不报错,但是为了使代码通用、简洁、避免出现乱码问题有以下这些约定俗成的规范:
1.类名使用帕斯卡命名法,变量名(缩写和常量可以例外)和方法名使用驼峰式命名法。
2.由字母、数字、下划线“”和美元符号“$”组成。
3.必须以字母、下划线“
”和美元符号“$”开头。
4.长度无限制但是大小写敏感

强调一下,以上是强烈建议这么做的规范,但是不这么做编译也不会报错。
以下这些这些变量名是正确的但不鼓励这样:


String 用户名; //变量名使中文
int #hao; //边量名有特殊符号

缩进、对齐、空格与空行###

记不记得安装JDK时是有源码的?在JDK目录下的src.zip就是。可以直接解压打开看看。例如我打开了java\lang下的String.java。然后截取下面一段代码,基于这段官方代码来说几条规范。


【精致Java教程】16:代码规范(一)_第1张图片
  • 一行只写一个语句。
  • 语句如果太长要分行,通常80到100个字符就应该分行了。另外下一行要缩进四个空格。如上图1。
  • 每个关键字之间空一格,例如:
    public final String
    private int hash
  • 每个代码块(通常是每对“{}”)之间空一行。
  • 被大括号“{}”括起来的代码要缩进四个空格(强调下是四个空格不是tab)。
  • 左大括号和代码块签名在同一行,例如public String() {
    右大括号要和代码块第一个关键字对齐。如上图2中的“}”和public对齐。
  • 运算符左右两边空一格。例如:this.value = new char[0]
  • 强制类型时小括号和转换值之间空一格,例如(int) 1.5
  • 单行注释//和注释内容之间空一格,例如// 我是注释

关于代码的规范还有很多,目前先记住这几条即可,未来写了其它语法再说。
关于规范,上面说了即使你不遵守也不会报错,例如你可以乱取标示符,每个关键字空几格。每个语句空几行。一行写几个语句都不会报错。但是你要知道代码通常要给别人看的,即使你自己不恶心,也不应该让别人看到丑陋的代码。

你可能感兴趣的:(【精致Java教程】16:代码规范(一))