面向对象三大特征-多态
同一事物,在不同时刻表现不同的状态
-
存在的必要条件
- 要有继承(包括接口的实现)(前提条件)
- 要有重写(前提条件)
- 父类引用指向子类对象
-
调用方法
静态成员方法
成员变量
注意:变量不存在被子类覆写这一说法,只有方法存在覆写.
方法参数具有多态性
方法参数多态性的好处:提高代码的扩展性
在使用的时候,编译看左,运行看右。(指成员方法)
多态(极端情况下)环境下对(①静态方法②成员变量)的调用,编译运行都看左。
-
上下转型
向上转型
向上转型的作用是:提高程序的扩展性.
向下转型
向下转型的作用是:为了使用子类中的特有方法. -
final
final用于声明属性,方法和类
属性:定义就必须直接赋值或者在构造方法中进行赋值,并且后期都不能修改.
方法:子类里不可被覆盖.
类:不能被定义为抽象类或是接口,不可被继承.private int index; private static final double pai = 3.14; private final int level; public Test(){ level = 0; } public Test(int index){ this.index = index; level = 1; }
对参数做final修饰
在方法参数前面加final关键字,为了防止数据在方法体中被修改.
6.关键字instanceof
大类型 instanceof 小类型
**作用:**判断大类型中是否包含具体的小类型
String s = "abc";
Object obj = s;
if(obj instance Dog){
Dog.d = (Dog)obj;
}else{
System.out.println("不包含Dog类型")
}
##### 如有错误,欢迎私聊,也欢迎讨论.