- 父类对象与子类对象之间的转换类似于基本数据类型之间的强制转换,存在继承关系的父类对象与子类关系之间,在一定条件下也是可以相互转换的。
1、子类对象可被视为父类的一个对象,而父类对象不可视为子类的对象。
2、变量是父类可以创建一个子类对象。
例如:Person p=new Student();//变量是人可以创建一个学生对象(需要一个人可以来一个学生)父类为变量可以创建子类的对象
3、如果父类对象引用指向的实际是一个子类对象,那么这个父类的引用可以强制类型转换为子类的对象引用。
例:Person p=new Student();
Student s=(Student)p;
public class Person {
public static void main(String[] args) {
}
}
public class Student extends Person {
public static void main(String[] args) {
Student s1=new Student();
Person p1=new Person();
Person p2=new Student();
Student s2=(Student)p2;
Student s3=(Student)p1;
}
}