标识符
1.标识符可以标识什么?
类名
方法名
变量名
接口名
常量名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r4XsSiCO-1602506992676)(C:\Users\llhnb\Pictures\Saved Pictures\8.png)]
2.什么是标识符?
凡是程序员自己有权利命名的单词都是标识符。
3.标识符的命名规则
命名规则属于语法机制,必须遵守,不遵守编译器会报错。
- 标识符只能由数字、字母(包括中文)、下划线_、美元符号$组成,不能含有其它符号。
- 标识符不能以数字开头
- 标识符中不能有空格。 例:class Hello World{ } (这种写法是错误的。)
- 关键字和保留字不能做标识符。例如:public class static void 等
- 标识符严格区分大小写。例:class A{ } 和class a{ }是两个不同的类
- 标识符理论上没有长度限制。
4.问:创建一个java文件,起名123.java可以吗?
可以,完全可以,在windows操作系统中文件名叫做:123.java没毛病。 123并不是标识符,只是一个文件名。
5.在123.java文件中定义public的类可以吗?
不可以!因为之前有一条规则是这样说的:public的类可以没有。
但如果有public的类,也只能有一个,并且public的类的名字必须和源文件名保持一致。也就是public class 123{ }
但是最终尴尬了,因为123不能做标识符,是错误的
6.标识符的命名规范
规则类似于现实世界的法律,规范类似于现实世界的道德。
-
见名知意(一看这个单词就知道是啥意思)
-
遵循驼峰命名方式,即一高一低,一高一低…驼峰有利于单词与单词之间很好的进行分隔。例:BiaoShiFuTest,这个很好,一眼就能看出来是4个单词。
-
类名和接口名首字母大写,后面每个单词首字母大写。
StudentTest、UserTest,这是类名、接口名。
-
变量名、方法名首字母小写,后面每个单词首字母大写。
nianLing 、mingZi
-
所有“常量”名:全部大写,并且单词和单词之间用下划线衔接。
USER_AGE:用户年龄 PI:圆周率
7.习题:分析以下单词哪些是合法的标识符,哪些不合法,并说明原因
myName,字,My_name,Points,3,$POINTS,_23b,OK,#name,25name,class,&time,if,Hello World
3,25name:不能以数字开头,但是可以由_下划线开头
#name:标识符不能包含#
class,if:是关键字
&time:标识符不能包含&
Hello World:标识符中不能有空格