可以用子类作为父类的一个实例返回。
而且用这个子类进行强制类型转换。
至于为什么要那么写,确实也讲不清楚,应该是一种程序设计的考虑。
如果第一行写Employee obj也没什么问题。
书上的例子只是说明可以那么用。

解决方案 »

  1.   

    因为java里面所有的类都是Object的子类,而Employee就是它的子类.
    new Employee("Harry Hacker", 35000);//表明Employee这个类有一
                                     //个Employee(String msg,int i)
                                     //的构造函数Object obj = new Employee("Harry Hacker", 35000);//表明子类就是父类这个原理
                                                 //这么做可以利用多态性,提高复用Employee e = (Employee)obj;//强制类型转换,一般编译通过,运行抛出异常