我的意思是说:
初学java ,只见到类似:Employee e=new Employee();
--------       ----------
的语句.下划线的部分通常一样。而楼顶的例子前后不一样,如何理解。实际应用中呢?

解决方案 »

  1.   

    这样做不但正确而且是最好的做法,利用了面向对象的多态性.
    而且是一种设计模式.
    举个例子说明一下这种用法的好处:
    假如类Employee有两个子类Manager1和Manager2.
    利用上面的做法可以这样用,
    Employee e = new Manager1();
    ...
    e = new Manager2();
    ...
    这样对象e可以代表所有的Employee类的子类对象.
    可是用这样用,
    Manager1 e = new Manager1();
    ...
    e = new Manager2(); (错误用法)
    ...
    这样e对象只能代表Manager1子类对象了.这种用法在很多设计模式中的核心技术(如工厂模式).详细的可以自己看一下.
      

  2.   

    http://expert.csdn.net/Expert/topic/1480/1480286.xml?temp=.4065058
    这个是那本书上的例子嘛?呵呵
      

  3.   

    Jin901(求学者) 解答的非常好,这就是OOP中的多态,实现动态连接用的,非常有用啊,如果不懂的话,等看完cast一节后肯定会明白的!