多态总结

1什么是多态。
相同的行为不同的体现叫多态。
例如父类笔能写字,它的子类钢笔和毛笔都能写字,但是写出的字是不同的。
2多态分为静态多态和动态多态。
静态多态指的是程序在编译时,系统就能决定调用哪个方法,所以也称为编译时多态。静态多态通过重载实现。
动态多态是指动态多态性指在运行中才能动态确定操作指针所指的对象,所以也称为运行时多态。动态多太通过动态绑定和方法重写实现。
简单来说,静态多态性就是指方法的重载,是在一个类中的行为。动态多态性是指方法的重写,即多态,是在有继承关系的两个或两个以上的类中的行为。
3instanceof关键字作用。
用来判断对象的真正类型。
例如:A instanceof B
A是一个对象(使用new实例的对象)
B是一个类(不是方法名)
他表示A这个对象是否是B这个类的实例。
4向上转型与向下转型
向上转型技术:一个父类的引用变量可以指向不同的子类对象,或者说一个子对象可以被当做一个父类类型。java的向上转型,可以让父类的实例可以调用子类已经覆写的方法
向下转型技术:必须使用强制类型转换才能实现向下转型。作用向下转型可以调用父类没有定义,但子类实现的方法。比如父类有a()方法,子类重写了a()方法,而且额外添加了一个b()方法,父类中没有b方法那么要调用子类的b方法,必须将父类变量向下转型为子类才可以调用b方法。
5什么叫抽象?
我们不需要类的实例,就可以将类设置成为一个抽象类。
例如:水果是个抽象类,水果抽象类中定义了一个“吃”过程,这个过程是没法实现的(西瓜和猕猴桃显然有不同吃法),如果我要建立西瓜类,我就可以用水果抽象类这个框架,单独写西瓜“吃”的过程(切开,吃,扔掉皮6
6抽象的作用
1让设计更合理
2规范我们的子类
抽象类也可以有构造方法。
7关键字abstract
使用这个关键字可以声明一个抽象类
例如public abstract class Employee{
}
也可以用来声明抽象方法,
例如
public abstract doublie computePay(){
/}

posted @ 2014-04-23 23:21  朱天狱炎  阅读(238)  评论(0编辑  收藏  举报