向上转型和向下转型
class Person{
public void run(){
System.out.println("person run");
}
public void eat(){
System.out.println("person eat");
}
}
class Student extends Person{
public void run(){
System.out.println("student run");
}
public void study(){
System.out.println("student study");
}
}
// 向上转型:父类的引用指向子类对象
// 找运行类型的方法
Person p = new Student();
p.run(); // student run
p.eat(); // person eat
// 向下转型:把指向子类对象的父类引用,转成指向子类对象的子类引用
Student s = (Student)p;
s.run(); // student run
s.studey(); // student study
s.eat(); // person eat