首先是父类具有抽象方法(可以传值的构造)
public abstract String onFu();
然后继承给两个子类
子类拥有父类的抽象方法并且给了参数
然后子类实现自己的拓展接口
我给它实现了它接口的构造
public class Zi1 extends Fu implements ApiZ1 {
@Override
public String onFu() {
return "子";
}
@Override
public String onEit(String eit) {
return eit;
}
}
public class Zi2 extends Fu implements ApiZ2 {
@Override
public String onFu() {
return "fvdf";
}
@Override
public void onWc(String wc) {
}
}
我在测试类实现了向上转型
Person person=new Teacher("ss","aa");
String s = person.onData();
调用子类继承父类的呢个方法
然后实现了它的向下转型:
String name = ((Teacher) person).getName();
强转调用子类自己的方法
public class CeShi03 {
public static void show1(){
//向上
Fu zi1 = new Zi1();
String s = zi1.onFu();
Log.d("TAG", "show1: "+s);
//向下
String ssss = ((Zi1) zi1).onEit("ssdsd");
Log.d("TAG", "show1: "+ssss);
};
}