【Java】标识符

一、标识符

Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符。简单的说,凡是程序员自己命名的部分都可以称为标识符。即给类、变量、方法、包等命名的字符序列,称为标识符

1、标识符的命名规则

定义合法标识符规则

(Java语言规范是描述Java语言的官方文档。可以从网站http://docs.oracle.com/javase/specs上阅读或下载)

(1)Java的标识符只能使用26个英文字母大小写,0-9的数字,下划线_,美元符号$

(2)不能使用Java的关键字(包含保留字)和特殊值

(3)数字不能开头 error: 8hello错误的

(4)标识符不能包含空格

(5)Java钟严格区分大小写,大小写敏感

2、标识符的命名规范

标识符的命名规范 (起名不规范,两行泪,会被打的)。

在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。

(1)见名知意

(2)类名、接口名等:每个单词的首字母都大写,形式:XxxYyyZzz,

例如:HelloWorld,String,System等

(3)变量、方法名等:从第二个单词开始首字母大写,其余字母小写,形式:xxxYyyZzz。

例如:age,name,bookName,main

(4)包名等:每一个单词都小写,单词之间使用点.分割,形式:xxx.yyy.zzz,

例如:java.lang

(5)常量名等:每一个单词都大写,单词之间使用下划线_分割,形式:XXX_YYY_ZZZ,

例如:MAX_VALUE,PI

2、关键字、保留字、特殊值

Java关键字、含义 https://blog.csdn.net/qq_41569732/article/details/103209422

关键字、保留字和特殊值:全部小写(50+3)
(1)关键字:在Java中被赋予的特定含义的单词。
基本数据类型相关(8个):byte、short、int、long、float、double、char、boolean

8位整数类型(一个字节)、16位整数类型、32位整数类型、64位长整数类型、单精度浮点数类型 四字节、双精度浮点数类型八个字节、 布尔类型

流程控制语句相关(10个):if、else、switch、case、default、break、for、while、do、continue

判断某个对象是否是某种类型的实例对象运算符:instanceof
定义类:class
创建类的对象:new
包相关:package、import
权限修饰符:public、protected、(缺省)、private
继承类:extends
定义接口:interface
实现接口:implements
当前对象:this
父类引用:super
表示无返回值:void
结束方法:return
定义枚举:enum
其他修饰符:abstract、static、final、native
异常处理:try、catch、finally、throws、throw
多线程同步和安全:synchronized、volatile
和IO序列化相关:transient
和单元测试相关:assert
其他:strictfp(strictfp 关键字可应用于类、接口或方法。如果你想让你的浮点运算更加精确,严格遵守FP-strict的限制,符合IEEE-754规范,而且不会因为不同的硬件平台所执行的结果不一致的话,可以用关键字strictfp.

(2)保留字:在Java中注册但还未使用
goto、const
(3)特殊值:true、false、null

Java 核心技术系列)书名原文: Core Java Volume I—F undamental s (Tenth Edition)

附录A Java关键字

按字母顺序排列

关键字 含义
abstract 抽象类或方法
assert 用来查找内部程序错误
boolean 布尔类型
break 跳出一个switch或循环
byte 8位整数类型(一个字节)
case switch的一个分支
catch 捕获异常的try块子句
char Unicode字符类型 (两个字节)
class 定义一个类类型
const 未使用 (保留关键字,没有具体含义)
continue 在循环末尾继续
default switch 的缺省子句
do do/while 循环最前面的语句
double 双精度浮点数类型
else if语句的else子句
enum 枚举类型
extends 定义一个类的父类
final 一个常量,或不能覆盖的一个类或方法
finally try块中总会执行的部分
float 单精度浮点数类型 四字节
for 一种循环类型
goto 未使用
if 一个条件语句
implements 定义一个类实现的接口
import 导入一个包
instanceof 测试一个对象是否为一个类的实例
int 32位整数类型
interface 一种抽象类型,其中包含可以由类实现的方法
long 64位长整数类型
native 由宿主系统实现的一个方法
new 分配一个新对象或数组
null 一个空引用(需要说明, null从技术上讲是一个直接量, 而不是关键字)
package 包含类 的一个包
private 这个特性只能由该类的方法访问
protected 这个特性只能由该类、其子类以及用一个包中的其他类的方法访问
public 这个特性可以由所有类的方法访问
return 从一个方法返回
short 16位整数类型
static 这个特性是这个类特有的,而属于这个类的对象
strictfp 对浮点数计算使用严格的规则
switch 一个选择语句
super 超类对象或构造函数
synchronized 对线程而言是原子的方法或代码块
this 当前类的一个方法或构造函数的隐含参数
throw 抛出一个异常
throws 一个方法可能抛出的异常
transient 标志非永久的数据
try 捕获异常的代码块
void 指示一个方法不返回如何值
volatile 确保一个字段可以由多个线程访问
while 一种循环

3、code

概念

/*
标识符:在Java中对类名、变量名、方法名等这些要素进行命名的字符序列称为标识符。
通俗的理解:凡是程序员自己命名的地方都叫做标识符。
见名知意   单词量
1、标识符的命名规则(必须遵守,否则编译或运行错误)
(1)Java的标识符必须用26个英文字母的大小写、数字0-9,美元符号$,下划线_
(2)Java的标识符不能使用关键字(包含保留字)和特殊值
例如:class,public,static,void等
一共不能用的有50个关键字+3个特殊值
(3)不能使用空格
(4)数字不能开头
(5)Java的标识符严格区分大小写

2、标识符的命名规范(建议遵守,不遵守会被鄙视)
不遵守杀了你 傻逼玩意 谁他妈命名的
(1)见名知意
让别人一看就知道这个类、变量、方法的意义在哪里。

(2)类名、接口名等,要求每一个单词的首字母大写,形式:XxxYyyZzz
例如:HelloWorld,BiaoShiFu
标识符    类名、接口名 要求每一个单词的首字母大小 AaaBbbCcc
(3)变量名、方法名等:要求从第二个单词开始,首字母大写,其余字母小写,
形式:xxxYyyZzz
例如:main()方法,println()方法,print()方法,nextInt()方法
变量名 方法名    驼峰
(4)包名等:要求所有单词都小写,每个单词之间使用.分割
形式:xxx.yyy.zzz
例如:java.lang,java.util,java.io,java.text,java.time等
包名  所有单词小写 . 分割
(5)常量名:要求所有单词都大写,每个单词之间使用_分割
形式:XXX_YYY_ZZZ
例如:PI(圆周率),MAX_VALUE(最大值)

*/
//class Biao Shi Fu{}//错误的,因为包含空格
//class 2Test{}//错误的,数字不能开头
class BiaoShiFu{
}

code:https://github.com/liuawen/Learning-Java

原文地址:https://www.cnblogs.com/liuawen/p/12854017.html