//父类 package oop.demo08; public class Person { public void run(){ System.out.println("run"); } } //子类 package oop.demo08; public class Student extends Person{ public void go(){ System.out.println("go"); } } //测试 public class Application { public static void main(String[] args) { //类型的转换:父 --> 子 (强转) //子 --> 父 低转高(自动) 子类转换父类,可能丢失自己本来的一些方法 //高 低 Person s1 = new Student(); //将s1这个对象转换为Student类型,就可以使用Student类中的go方法 //高转低,强制转换 Student student = (Student) s1; student.go(); //或者合并为一句话 ((Student)s1).go(); /* 注意事项: 1.父类引用指向子类的对象 2.把子类转换为父类,向上转型 3、把父类转换子类,向下转型:强制转换 目的是方便方法的调用,减少重复的代码 * */