多态
多态

/*
多态
即同一方法根据对象的不同而采用多种不同的行为方式。
一个对象的实际类型是确定的,但可以指向对象的引用类型有很多
注意;
1;多态是方法的多态,属性没有多态
2;父类跟子类,有联系。否则出下面类型转换异常classcastexception;
3;存在条件,继承关系,方法需要重写,父类引用指向子类
4;回顾 static (静态方法)方法属于类,它不属于实例。不能被重写,
final 常量。不能被重写
private 私有的不能被重写
*/
public class Person {
// 一个对象的实际类型是确定的
//new Student
//new Person
//可以指向的引用类型是不确定的:父类的引用指向子类(person s2 = new Student());
//对象能执行那些方法主要看左边,跟右边关系不大。
/*
1;子类调用的方法可以是自己的也可以是继承父类的
2;父类型可以指向子类但不能调用子类独有的方法
*/
}
instanceof(类型转换)引用类型
/*
instanceof(类型转换)
a instanceof b (查看是否有继承关系,能不能编译成功)
由高到低需要强制转换,
高类 s = new 低类();
低类 s1 = (小类)s
//子类转为父类可能丢失自己一些方法
//父类引用指向子类的对象
//把子类转换为父类。向上转型
//把父类转换为子类,向下转型。强制转换
*/

浙公网安备 33010602011771号