1. 关键字和保留字

关键字

保留字

2. 标识符及命名规则

2.1 标识符

凡是可以起名的地方就叫标识符

比如:类名、变量名、方法名、接口名、包名...

2.2 命名规则

① 由英文字母大小写,数字,下划线_$ 组成

② 数字不能开头

③ 不能使用关键字和保留字,但能包含关键字和保留字

④ 严格区分大小写,长度无限制

⑤ 不能含空格

2.3 命名规范

  • 包名(xxxyyyzzz):多单词组成时所有字母小写
  • 类名、接口名(XxxYyyZzz):多单词组成,所有单词的首字母大写
  • 变量名、方法名(xxxYyyZzz):多单词组成则第一个单词首字母小写,第二个单词开始首字母大写
  • 常量名(XXX_YYY_ZZZ):所有字母都大写,多单词组成用下划线连接

2.4 注意

  • 起名做到 见名知意
  • java采用unicode字符集,可用汉字命名但是不推荐!

3. 变量

3.1 变量声明与定义

① 变量声明

datatype variable;

② 变量的定义

datatype variable = value;

3.2 注意

  • 变量必须先声明后使用
  • 不要声明不使用的变量
  • 变量的作用域,其定义所在的一对 {}
  • 变量只有在其作用域内才有效
  • 同一个作用域内,不能定义重名的变量

3.3 变量的分类

1. 按照数据类型分类

  • 基本数据类型
    • 整型byte / short / int / long
    • 浮点型float / double
    • 字符型char
    • 布尔型`boolean
  • 引用数据类型
    • (class)
    • 接口(interface)
    • 数组(array)

2. 变量在类中声明的位置

成员变量 VS 局部变量

3.4 整型变量

类型 占用存储空间 表数范围
byte 1byte=8bit -128~127
short 2个字节 -2^15^ ~ 2^15^ -1
int 4字节 -2^31^ ~ 2^31^ -1
long 8字节 -2^63^ ~ 2^63^ -1

注意:

① byte范围

② 声明 long 型变量必须以 l 或者 L 结尾

③ 声明整型变量通常使用 int

3.5 浮点型

类型 占用存储空间 表数范围
单精度 float 4字节
双精度 double 8字节

注意:

① 浮点型表示带小数点的数值

② float 表示数值范围比 long 还大

③ 定义 float类型数据时,变量以 f/F结尾

④ 通常定义浮点型变量使用 double

3.6 字符型 char

1字符 = 2字节

① 定义char型变量,通常使用一对单引号 '' ,内部只能有一个字符

char c = '' (编译报错)

② 表示方式:

  • 单引号括起来的单个字符
  • 转义字符 \n ,\t ,\\ ,\" , \' , \r , \b
  • Unicode值表示法

3.7 布尔型 boolean

① 布尔值只有两个:truefalse

② 常用于条件判断、循环结构

3.7 自动类型转换

​ 只讨论7种基本数据类型变量间的运算,不包含 boolean 类型。

自动类型提升

​ 当容量小的数据类型的变量与容量大的数据类型变量做运算时,结果自动提升为容量大的数据类型(容量是指数的范围大小

​ byte 、char、short --> int --> long --> float --> double

​ 特别的,当 byte,char,short 三种类型数据之间做运算,结果为 int 类型

​ (包括这三种同种类型之间的运算)

java在做运算时,若操作数均在 int范围内,那么一律在 int 的空间内运算

byte b1 = 1;
byte b2 = 2;
short s1 = b1 + b2; // 编译不通过

3.8 强制类型转换

​ 强制类型转换: 自动类型提升运算的逆运算。

​ ① 需要使用强转符 ()

​ ② 公式:(type)value

​ ③ 强制类型转换可能导致精度损失

int a = (int)3.14

​ ④ boolean类型与8种基本数据类型均不能转换

3.9 类型转换的特殊情况

① 定义 long 型不加 L ,若其值在 int型范围内则编译通过,若不在则编译失败;定义 float 型不加 f ,编译直接编译报错。

② 整型常量的默认类型是 int 型;浮点型常量默认是double型。

3.10 String类型

① String属于引用数据类型

② 声明 String 类型变量使用一对双引号 ""

③ String 可以和 8 种基本数据类型变量做运算,且运算只能是连接运算 +,运算结果仍是 String 类型。

数字类型转字符串:String valueString = String.valueOf(value)