前言

JAVA 语言提供了很多符号,包括:注释、分隔符、运算符、修饰符等。

# 关键字和标识符

关键字
JAVA 语言中有一些具体特殊用途的单词被称为关键字。
标识符
标识符,用于给变量、类、方法命名,有以下要求:

  • 可以由 字母、_ 、$ 开头
  • 可以由 字母、_ 、$ 、数字 组成
  • 不能包含空格
  • 不能是 JAVA 的关键字

标识符命名约定
小驼峰命名法

  • 首个单词的首字母小写
  • 其余单词的首字母大写

提示

适用于:方法、变量

大驼峰命名法

  • 所有单词的首字母均大写

提示

适用于:类

# 注释

单行注释

// 这是注释
1

多行注释

/*
这是注释
*/
1
2
3

文档注释
可以通过 JDK 提供的 javadoc 工具将源代码中的文档注释提取成一份 API 文档。

# 分隔符

分号 ;
JAVA 采用分号作为语句的分割。允许一行书写多个语句,也允许一个语句跨越多行,只需要在合适的位置放置分号以分割语句即可。
花括号 {}
花括号的作用是定义一个代码块,代码块在逻辑上是一个整体。
方括号 []
主要用于访问数组元素。
圆括号 ()

  • 在定义方法是包含形参;在调用方法时包含实参
  • 在表达式中适当添加括号可以保证运算的正确顺序
  • (类型) 强制类型转换

空格
适当地在代码中使用空格,可以提升代码的可读性。

类/对象 . 成员变量/方法/内部类
1

表名调用某个类或某个实例的指定成员。

# 运算符

算术运算符
加、减、乘、除、取余、自增、自减
赋值运算符

变量 = 值;
1

将值赋给变量,需要注意的是,这个表达式本身也有值,其值等于所赋的值。
扩展的赋值运算符
算术运算符可以和等号结合,实现简化代码的作用。

a += 5;
// 等价于
a = a + 5;
1
2
3

扩展的赋值运算符隐含了强制类型转换

short s = 10;
s += 20;
// 等价于
short s = 10
s = (short)(s + 20)
1
2
3
4
5

比较运算符
比较运算符用于判断两个值的大小,其结果是一个 boolean 值。
逻辑运算符

符号 解释 备注
&& A && B ,当 A 为假时,结果必定为假,不会再判断 B。
& 不短路的与 A & B,无论 A 是什么情况,都会判断 B。
|| A || B,当 A 为真时,结果必定为真,不会再判断 B。
| 不短路的或 A | B,无论 A 是什么情况,都会判断 B。
! 取反

三目运算符

表达式1 ? 表达式2 : 表达式3
1

表达式1为真,则执行表达式2,且整个条件表达式的值为表达式2的值。
表达式1为假,则执行表达式3,且整个条件表达式的值为表达式3的值。

# 访问修饰符

private修饰符
常用于修饰成员变量,将成员变量隐藏在类的内部,当前类访问权限,仅能在当前类的内部被访问
default修饰符
即不加任何访问修饰符
protected修饰符
子类访问权限,既可以被同一个包下的其他类访问,也可以被不同包中的子类访问
通常情况下,使用 protected 修饰方法,是希望其子类重写这一方法
public修饰符
公共访问权限,可以被所有类访问
修饰成员
可以使用 private、default、protected、public 修饰成员,被修饰后的成员:

  • private:只能在当前类中被访问
  • default:可以被同一个包下的其它类访问
  • protected:可以被同一个包下的其它类,和不同包中的子类访问
  • pubilc:可以被所有类访问

# 非访问修饰符

static
使用 static 修饰的变量和方法被称为类变量、类方法。
final
final表示 “最后的、最终的”,用于表示它修饰的变量、方法和类不可改变。
abstract
抽象方法是一种没有任何实现的方法,该方法的的具体实现由子类提供

abstract 返回值类型 方法名();
1