JAVA多态和非多态有什么区别,觉得没有什么不同啊?

图片说明

你只是看到了结果的一样吧,你还是仔细看看面向对象的多态,查查多态的应用,深入理解下,最好结合一些实际例子,书上讲的太简单,根本没法让你理解多态

http://www.cnblogs.com/jack204/archive/2012/10/29/2745150.html

你应该先了解下多态的含义:对于相同类型的不同实现,该类型的行为是由具体指向的类型决定的。
比如,都是动物,都会有叫的行为,但是不同动物,叫的行为方式不同,这就是多态。这就对应着一种编程原则:面向抽象编程,定义变量时用抽象的类型,真正赋值的类型由客户端按照实际情况执行真实的实现类。

多态是说,
1,假设有个球对象,有子类篮球,乒乓球,羽毛球,每个子类里覆写了父类的tostring方法。。
2,如果你创建三个球对象,分别用子类New出来,对象是球对象,然后去调用tostring方法,虽然都是球对象,但会去调用不同类中的tostring方法,这就是多态

你好像在说new子类就调子类的方法了,父类就没啥关系了,结果父类还要多写一个方法,直接在子类中写就好了,这样父类中就少写一个方法了。
你这个思想就是没有明白父类是干嘛的。什么是父类,父类就是提取相同元素而凝聚成的。
举个例子:父类动物有个描述的方法“它是一只强大的猛兽!”,当你在写子类时,对于老虎,狮子这种野兽来说,这个描述的正确的,那么你就没有必要去重写这个方法,那你在子类中就少写了2个方法。
父类主要就是来提取子类中某些共同的特性,以达到减少子类重复定义。如果每个类的特性都不一样,那就没有必要提前一个父类出来。
错误的例子:老鼠,老虎,老鹰,他们都有捕食这个方法,但他们每个捕食都是独特的,强行提取父类,只会造成你说的那样,多写一个父类和一个父类方法

允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式
他只是给你提供了这样一种性质,方便继承

Java多态性理解