)
一、什么是标识符Identifier标识符是程序员为程序元素自定义的名称用于给以下元素“起名”变量如userName方法如calculateTotal()类如Student接口如List包如com.example.utils常量如MAX_SIZE代码示例public class Car { private int speed; // speed 是变量标识符 public void accelerate() { } // accelerate 是方法标识符 }二、Java 标识符的语法规则必须遵守合法标识符必须同时满足以下规则否则编译报错规则错误示例 ❌正确示例 ✅1. 首字符不能是数字2ndPlaceplace2nd2. 只能包含字母含Unicode如中文、数字、下划线_、美元符号$合法但不推荐user-name、usernameuserName、user_name3. 不能是 Java 关键字或保留字int class 5;int clazz 5;4. 区分大小写Name≠name是两个不同标识符userName、UserName5. 长度无限制但应简洁有意义thisIsAVeryLongVariableNameThatIsHardToReaduserAge合法但不推荐的示例int $temp 10; // 避免用 $ String 姓名 张三; // 避免用中文虽合法但降低可读性三、Java 标识符命名约定官方推荐遵循命名约定能大幅提升代码可读性以下是Java官方推荐的命名风格元素类型命名风格示例类、接口大驼峰PascalCase每个单词首字母大写UserService、HttpRequest方法、变量小驼峰camelCase第一个单词首字母小写后续单词首字母大写getUserName()、studentId常量static final全大写 下划线分隔MAX_RETRY_COUNT、PI包名全小写无下划线用域名倒写com.google.gson、com.example.project布尔变量/方法以is、has、can开头isActive、hasPermission()四、Java 关键字Keywords完整列表共 53 个Java 有50 个正式关键字3 个特殊保留字共 53 个词绝对不能用作标识符。4.1 关键字分类表便于理解分类关键字访问控制private、protected、public类/方法/变量修饰符static、final、abstract、synchronized、volatile、transient、native、strictfp流程控制if、else、for、while、do、switch、case、default、break、continue错误处理try、catch、finally、throw、throws包/引用import、package、this、super、instanceof数据类型boolean、byte、char、short、int、long、float、double、void其他new、class、interface、extends、implements、return、assert4.2 50 个关键字按字母排序便于记忆abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static strictfp super switch synchronized this throw throws transient try void volatile while4.3 3 个“特殊保留字”虽非关键字但不能用作标识符词说明错误示例 ❌true布尔字面量真int true 5;false布尔字面量假String false test;null空引用字面量Object null new Object();4.4 2 个“保留但未使用”的关键字关键字状态说明goto保留但 Java 从未实现避免使用Java 用break/continue替代const保留实际用final代替避免使用定义常量用final五、标识符 vs 关键字 对比表特性标识符关键字来源程序员自定义Java 语言预定义能否修改可自由命名不能更改是否区分大小写是Name≠name是但关键字全小写能否用作变量名可以只要合法绝对禁止IDE 显示通常黑色/灰色通常蓝色高亮六、常见错误示例// 错误1使用关键字 int class 10; // class 是关键字 // 错误2使用字面量 String null test; // null 不能作标识符 // 错误3以数字开头 double 3dPoint 5.0; // 首字符不能是数字 // 错误4包含非法字符 String user-name Alice; // - 不合法只能用字母、数字、_、$七、最佳实践建议永远不要尝试用关键字命名IDE 会直接报错无需侥幸。避免使用$和中文虽合法但降低代码可读性和跨平台兼容性。包名用公司域名倒写如com.alibaba.xxx、com.baidu.xxx避免包名冲突。常量全大写 下划线public static final int MAX_SIZE 100;一眼就能识别是常量。方法名动词开头getUser()、saveData()、calculateTotal()清晰表达方法功能。总结本文核心关键词Identifier标识符、Keyword关键字、Reserved Word保留字、Naming Convention命名约定、camelCase小驼峰、PascalCase大驼峰。