package cn.demo;
class Father {
Father() {
System.out.println("father construct function");
}
void method() {
System.out.println("father method function");
}
}
class Child extends Father {
Child() {
System.out.println("Child construct function");
}
public void method() {
System.out.println("Child method function");
}
public void play() {
System.out.println("play function");
}
}
public class TestMain {
public static void Func(Father f){
f.method();
if(f instanceof Child){
Child c = (Child)f;
c.play();
}
}
public static void main(String[] str) {
Father f = new Child();
Func(f);
}
}
功能类似于C++的dynamic_cast