多态的转型

本文记录Java学习过程中遇到的多态的转型~

多态的转型分为向上转型与向下转型两种:

  • 向上转型:当有子类对象赋值给一个父类引用时,便是向上转型,多态本身就是向上转型的过程。

使用格式:

      父类类型  变量名= new 子类类型();

示例代码:

      Person p = new Student();
  • 向下转型:一个已经向上转型的子类对象可以使用强制类型转换的格式,将父类引用转为子类引用,这个过程是向下转型。但是,如果是直接创建父类对象,是无法向下转型的。

使用格式:

      子类类型变量名= (子类类型) 父类类型的变量;

示例代码:

      //变量p 实际上指向Student对象
      Student stu = (Student) p;

标签: none