3.2标识符
上面我们知道我们自定义一个类,需要一个类名。在Java中,还有很多需要命名的组成部分,例如方法名,变量名等。标识符的命名需要遵循Java的规范,总结如下:
- 标识符由数字(0~9)和字母(A~Z 和 a~z)、美元符号($)、下划线(_)以及 Unicode 字符集中符号大于 0xC0 的所有符号组合构成(各符号之间没有空格,关于Unicode字符集接下来会专门讲解)。
- 标识符的首字符只能是字母、下划线和美元符号,后面可以是任何字母、数字、美元符号或下划线的组合
- 标识符是大小写敏感的,例如Hello和hello是2个标识符
- 不能使用Java的关键字作为标识符
- 不能使用true,false,null做为标识符
除了上面的硬性规定外,我们日常工作中,经常会有一些使用习惯和约定:
- 例如public是关键字,但是Public不是关键字,但是我们最好也不要用,即不要用关键字的其他形式来命名,以免影响程序的可读性
- 在给常量、变量、类和类的对象命名时,尽量赋予它一个有意义或有用途的名字,例如HelloWorld
- 当一个标识符由多个单词组成的时候,推荐使用驼峰式命名法。即除第一个单词外,每个单词的第一个字母大写(类名第一个单子首字母也大写,变量第一个单词一般小写)
3.3关键字
Java关键字是Java规定的有专门用途和意义的单词,不能在程序中用作其他用途。其中大部分都已经在使用中,有部分没有使用,作为预留关键字,将来版本升级时有可能会使用。目前有50个关键字,按照分类及用途列表说明如下(除了关键字外,还有一些字面值,true、false和null,这些看起来像关键字,其实是字面值,这些也不能用来作为标识符)。
分类 |
关键字 |
说明 |
基本数据类型 |
byte |
字节 |
short |
短整型 |
|
int |
整型 |
|
long |
长整型 |
|
char |
字符型 |
|
float |
单精度浮点 |
|
double |
双精度浮点 |
|
boolean |
布尔 |
|
访问控制 |
private |
私有的 |
protected |
受保护的 |
|
public |
公共的 |
|
default |
默认的 |
|
流程控制 |
if |
如果 |
else |
否则 |
|
do |
运行 |
|
while |
循环 |
|
break |
跳出循环 |
|
continue |
继续 |
|
for |
循环 |
|
return |
返回 |
|
switch |
根据选择执行 |
|
case |
和switch配合使用 |
|
类及接口 |
class |
类 |
new |
新建 |
|
interface |
接口 |
|
abstract |
抽象 |
|
extends |
继承 |
|
implements |
实现接口 |
|
this |
本类 |
|
instanceof |
实例 |
|
super |
父类 |
|
enum |
枚举 |
|
包相关 |
import |
导入 |
package |
包 |
|
错误处理及断言 |
try |
捕获异常 |
catch |
捕捉异常 |
|
finally |
有没有异常都执行 |
|
throw |
抛出异常 |
|
throws |
声明可能抛出的异常 |
|
assert |
断言 |
|
修饰符 |
final |
最终的,不可改变 |
native |
本地,原生 |
|
static |
静态 |
|
synchronized |
同步 |
|
transient |
瞬时 |
|
volatile |
易失 |
|
strictfp |
严格,精准 |
|
void |
无返回值 |
|
保留关键字 |
goto |
|
const |
3.4注释
注释是一门高级语言不可缺少的部分。Java可以在源代码文件中添加任意多行的注释,注释最终会被编译器忽略掉,因此注释并不不会影响程序的性能。Java支持三种注释的书写方式。
- 第一种方式是使用//,其注释的内容从//开始,到本行的末尾。例如:
System.out.println(s);//这是打印语句
- 第二种方式是使用/*开始,使用*/结束,将一段比较长的注释包起来,这样可以同时注释多行。例如第9行到第13行:
1 package ch03; 2 3 /** 4 * @ClassName: HelloWorld 5 * @Description: 这是一个演示程序 6 * @author Java大失叔 7 */ 8 public class HelloWorld { 9 /* 10 这是一个主函数 11 作用用是打印出来一句话 12 它是一个多行注释 13 */ 14 public static void main(String[] args) { 15 String s = "Java大失叔,你真棒"; 16 System.out.println(s);// 这是打印语句 17 } 18 }
- 第三种方式是使用/**开始,使用*/结束,将一段注释包起来,这种方式可以用来自动生成注释文档。例如上面的第3行到第7行。关于文档注释有机会单独讲解。
3.5变量和常量
我们学习数学函数的时候学过,y=f(x),x是自变量。就是用字母来表示一个会发生改变的值。在编程语言中,变量的含义也类似,就是用标识符来表示在程序的运行过程中会发生改变的值。那么在程序中怎么使用变量?变量的使用主要包含三个部分:命名、声明和赋值。
命名前面讲过,变量的命名需要遵循Java标识符的规则,这里就不重复了
声明就是告诉程序,我要申请使用一个变量,需用使用声明语句来声明变量,例如:
double money;
首先声明是一个完整的语句,需要用分号结束。其次Java是一种强类型语言,因此每一个变量都必须归属一种类型(关于类型后面会讲),这里的double就是一种数据类型。变量的类型放在变量名的前面。
我们可以在一行中声明多个变量,例如:
int i,j;
当声明完一个变量后,我们需要给变量赋值,如果在程序中使用未被赋值的变量,编译器会报错。赋值语句很简单:
money = 3d;
就是变量名后面跟随一个等于号,等于号后面跟随取值。我们可以同时完成声明和赋值:
double money=3d;
在Java中,我们并不规定声明语句的位置,只需要在赋值之前声明即可。
我们搞明白了变量,常量就简单了,所谓常量,就是一旦被赋值后,就不能再改变了。在Java中,需要用到final关键字来声明常量,例如:
final double PI=3.14d;
一般我们习惯把常量用大写命名。