有一个类class A{}
那么Object a=new A(); 和 A a=new A();有什么区别??

解决方案 »

  1.   

    Object a=new A(); 
    生成了一个A的的实例并转换为它的父类Object类型A a=new A(); 
    生成了一个A的的实例
      

  2.   

    明白点说吧,所有类都是Object的子类,所以Object a=new A(); 意思就是说,a是Object的子类A的一个实例
    就像:
    InputStream input = new FileInputStream();一个道理
      

  3.   

    Object a = new A();
    a...... //methods of A class
    之后可以
    a = new B();
    a...... //methods of B class
    方便进行类型封装和转换
    Object基类啊
      

  4.   

    Object 包含 所有对象类
    NEW A() A类的对象
      

  5.   

    Object a = new A(); 
    Object类是所有类的父类。
    Object类型的引用a对于A的属性和方法是不可见的,只有经过(A)a以后才可以用A的属性和方法。
    这就是所谓的多态。
      

  6.   


    给你举个例子
    class A(){
      mm(){
        ......
      }
    }
    如果用
    Object a = new A()
    使用不成a.mm()
    若用
    A a = new A()
    则可以使用a.mm()
    这就是7楼的解释