package 多态;
/*
* 多态的弊端:
* 不能使用子类的功能
* 使用子类的功能:
* 1.直接创建子类的对象,然后调用方法(可行,但是这不是多态)
* 2.把父类对象的引用强制转换成子类对象的引用(向上转型/向下转型)
* 向下转型可以使用子类和父类的方法
* 对象转型的格式:
* 向上转型:
* Fu f=new Zi();
* 向下转型:
* Zi zi=(Zi)f;//先创建父类对象,在进行向下转型;
*/
class Laozi{
int age=30;
public void show() {
System.out.println("劳资");
}
}
class Zi1 extends Laozi{
int age=10;
public void method() {
System.out.println("我是子方法");
}
public void function() {
System.out.println("我是子功能");
}
}
public class Practice01 {
public static void main(String[] args) {
Laozi lao=new Zi1();//向下转型
System.out.println(lao.age);
lao.show();
// lao.function();//弊端:不能使用子类的方法
Zi1 zi=(Zi1)lao;//向下转型(强转)
zi.method();
zi.function();
zi.show();
}
}
多态的弊端、向上转型和向下转型
最新推荐文章于 2022-10-16 23:47:37 发布