class 类名,以字母开头是字母和数字
编译成功后会成为一个类字节码文件 xxx.class
基本类型
基本类型:原始类及其对相应的封装类/引用类型
数据基本类型
8种基本类型:4种整形、2种浮点类型、1种表示unicode的char、1种表示真值的布尔类型
整形
没有小数部分得值,不允许负数
- int:最常用的类型
- long:例如地球的居住人数,有一个后缀L或1
- short:特定的应用场合
- byte:特定的应用场合
二进制数:前缀0b或0B
浮点型
- float:很少情况需要使用,是double的两倍,又称“双精度数值”,后面有一个F或f
- double:绝大部分程序采用此类型
出错和溢出的三个浮点数值(后面对应常量):
- 正无穷大-Doble.POSITIVE_INFINTY
- 负无穷大-Doble.NEGATIVE_INFINTY
- NaN
检测特定值是否等于NaN的方法:
if(double.isNaN(x)) //x不是一个数字
char型
有的Unicode用一个char标示,有的为两个
字面量使用单引号扩起来,可容纳单个字符的数据类型,有些字符(辅助)需要两个char描述
char类型值表示十六进制值:\u0000~\Uffff
Unicode转译序列以及次序:先转译序列,后解析代码
描述UTF-16编码的Unicode码点的代码单元
Unicode与码点
码点采用16进制,前缀U+
17个代码级别:
第一个代码:基本的多语言级别:U+0000~U+DFFF;剩余16个:U+10000~U+10FFFF
布尔型
boolean a = true
boolean b = false
类的关系
依赖(uses-a):应该让类之间耦合度最小
聚合(has-a):A的对象包含着B的对象
继承(is-a):表示特殊与一般关系
类的导入
import 语句,位于文件顶部和包名之后。
无法确定导入哪一个类,使用特定的语句导入该类;若都要使用,在前面加入包名
import还可以导入静态方法和静态域。
参见静态方法
示例:
import static java.long.Syetem.*
强类型转换
某个类的对象引用转换成另一个类的对象引用
近似数值类型与强制类型转换的强制类型转换。
超类转换子类前,使用instanceOf检查
类举例
超类(Object)、抽象类、泛型类、枚举类