第五章类和对象2015-05-12

来源:互联网 发布:怎么在手机淘宝买东西 编辑:程序博客网 时间:2024/06/07 05:25

一 多态

1 java引用变量有两中类型:编译时类型和运行时类型,前者有声明变量时的类型决定,后者由实际赋给该变量的对象决定。而当编译时类型和运行时类型不一致时称为多态

2 引用变量中能调用编译型类型的方法

3 强制类型转换

--基本数据类型只能在数值型间进行,数值类型包括整数型、字符型、浮点型,数值型不能和布尔型进行转换

--引用类型只能把父类型的变量转换成子类类型,且这个变量指向的对象实际上是子类的实例才行,否则报ClasCastException

--进行强制转换前可以用instanceof判断是否可以转换

--用(type)运算符进行强制转换


二 继承和组合

1 继承可以实现类的重用,但是却也带来了破坏封装

2 使用继承需要注意的点:使用访问控制符修饰类、属性、方法,只暴漏需要被外部类调用的,还可以用final修饰不想被重写的属性、方法、类等

3 使用继承的条件:

--子类需要添加新的属性,而不是属性值的改变。如person派生出student,需要增加grade

--子类需要添加独有的行为方式。如person派生出teacher,需要添加teach()

4 继承: is a,如狼是一个动物

5 组合可以实现类的重用,封装性上比继承更好,

6 组合:has a,如手臂是人的一部分


三 初始化块

1 是构造器的补充,总是在构造器前执行

2 分两种:{ }和static{}

3 初始化顺序:

类初始化阶段,先执行最顶层父类的静态初始化块,依次向下到当前类静态初始化块;对象初始化阶段,先执行顶层父类初始化块构造器,依次向下到当前类初始化块构造器


0 0