用来标识 类名、变量名、方法名、类型名、数组名、文件名 的有效字符序列,标识符就是一个名字
由 字母、下划线、美元符号、数字 组成
长度不受限制
第一个不能是数字字符
字母区分大小写,为广义的字符Unicode字符集,可以汉字
int 年龄 = 18; //T int #a;//F ???字符#
不能是关键字和 true、false和null
| 类别 | 关键字 | 说明 | 
|---|---|---|
| 访问控制 | private | 私有的 | 
| protected | 受保护的 | |
| public | 公共的 | |
| 类、方法和变量修饰符 | abstract | 声明抽象 | 
| class | 类 | |
| extends | 扩允,继承 | |
| final | 最终值,不可改变的 | |
| implements | 实现(接口) | |
| interface | 接口 | |
| native | 本地,原生方法(非Java实现) | |
| new | 新,创建 | |
| static | 静态 | |
| strictfp | 严格,精准 | |
| synchronized | 线程,同步 | |
| transient | 短暂 | |
| volatile | 易失 | |
| 程序控制语句 | break | 跳出循环 | 
| case | 定义一个值以供switch选择 | |
| continue | 继续 | |
| default | 默认 | |
| do | 运行 | |
| else | 否则 | |
| for | 循环 | |
| if | 如果 | |
| instanceof | 实例 | |
| return | 返回 | |
| switch | 根据值选择执行 | |
| while | 循环 | |
| 错误处理 | assert | 断言表达式是否为真 | 
| catch | 捕捉异常 | |
| finally | 有没有异常都执行 | |
| throw | 抛出一个异常对象 | |
| throws | 声明一个异常可能被抛出 | |
| try | 捕获异常 | |
| 包相关 | import | 引入 | 
| package | 包 | |
| 基本类型 | boolean | 布尔型 | 
| byte | 字节型 | |
| char | 字符型 | |
| double | 双精度浮点 | |
| float | 单精度浮点 | |
| int | 整型 | |
| long | 长整型 | |
| short | 短整型 | |
| null | 空 | |
| 变量引用 | super | 父类,超类 | 
| this | 本类 | |
| void | 无返回值 | |
| 保留关键字 | goto | 是关键字,但不能使用 | 
| const | 是关键字,但不能使用 | 
类名:每个单词首字母大写
Man,GoodMan
方法名、变量名:第一个单词小写,第二个单词起首字母大写(驼峰原则)
eat() eatFood()
Java语言允许程序员在程序中写上一些说明性的文字,用来提高程序的可读性,这些文字性的说明就称为注释。
注释不会出现在字节码文件中,即Java编译器编译时会跳过注释语句。 注释不是程序设计语言。
在Java中根据注释的功能不同,主要分为单行注释、多行注释和文档注释。
单行注释:  使用“//”开头,“//”后面的单行内容均为注释。
多行注释:   以“/*”开头以“*/”结尾,在“/*”和“*/”之间的内容为注释,也可以使用多行注释作为行内注释,多行注释不能嵌套使用。
文档注释:   以“/**”开头以“*/”结尾,注释中包含一些说明性的文字及一些JavaDoc标签(后期写项目时,可以生成项目的API)
/**
 * Welcome类(文档注释)
 * @author Zander
 * @version 1.0
 */
public class Welcome {
    //单行注释
    public static void main(String[] args/*行内注释 */) {
        System.out.println("Hello World!");
    }
    /*
       多行注释
       多行注释
     */
}
原文:https://www.cnblogs.com/ZanderZhao/p/11487773.html