父类和子类之间可以转化吗?

解决方案 »

  1.   

    我表达不清楚,结合代码楼主体会一下:class Father
    {
    }
    class Son extends Father
    {
    }
    public class FatherAndSon
    {
    public static void main(String[] args)
    {
    Father f0; //声明父类对象引用。
    Son s0; //声明子类对象引用。
    Father f1= new Father(); //声明并创建父类和子类对象
    Son s1= new Son();
    f0=s1; //声明为父类引用可以指向子类对象。
    //s0=f1; //声明为子类的引用不能指向父类对象。
    s0=(Son)f0; //可强制转型。 //或者这样。
    Father f2= new Son(); //直接声明父类引用,创建子类对象。
    Son s2   =(Son)f2; //强制转型。
    }
    }
      

  2.   

    1、一种说法叫做“子类就是父类”,是因为父类中的属性,子类都有,当然不能继承private属性和方法。
    2、父类型的引用指向子类型的对象的时候,就是我们常说的“多态”。
    3、父类不能直接转换成子类型,因为这样可能会丢失很多数据,java认为这样做是很危险的。
      

  3.   

    可以。
    例子:父类:Father 子类:son
    Father f = new son();
    son s = (son) new Father();