class 类名,以字母开头是字母和数字
编译成功后会成为一个类字节码文件 xxx.class

基本类型

基本类型:原始类及其对相应的封装类/引用类型

数据基本类型

8种基本类型:4种整形、2种浮点类型、1种表示unicode的char、1种表示真值的布尔类型

整形

没有小数部分得值,不允许负数

  1. int:最常用的类型
  2. long:例如地球的居住人数,有一个后缀L或1
  3. short:特定的应用场合
  4. byte:特定的应用场合

二进制数:前缀0b或0B

浮点型

  1. float:很少情况需要使用,是double的两倍,又称“双精度数值”,后面有一个F或f
  2. double:绝大部分程序采用此类型

出错和溢出的三个浮点数值(后面对应常量):

  1. 正无穷大-Doble.POSITIVE_INFINTY
  2. 负无穷大-Doble.NEGATIVE_INFINTY
  3. NaN

检测特定值是否等于NaN的方法:

  1. 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)、抽象类、泛型类、枚举类