重写的作用?

[复制链接]
查看11 | 回复2 | 2010-3-26 18:25:33 | 显示全部楼层 |阅读模式
呵呵,因为子类有了这个方法后就不用用父类的了。因为他们的具体内容是不一样的比如。class Father{
public void run(){
System.out.println("10m/s");
}}class Sun extends Father{
public void run(){
System.out.println("20m/s");
}}因为father有run这个动作,sun也用这个动作,但是他们的具体内容可能不一样,比如速度。
回复

使用道具 举报

千问 | 2010-3-26 18:25:33 | 显示全部楼层
因为你还没有用到抽象类,所以无法理解重写的作用。比如,现在有一个父类P,它有N多个子类S1,S2,S3...在某一种情况下,你根本就不知道是哪个子类在执行,有些情况下也不必知道。但是只知道这些子类都有父类的一个方法m(),这时候,你可以通过将一个变量声明为P,但是实际却是S1。如,P s = new S1(); s.m();这时候实际执行的是子类的方法体,而不是父类的方法体。这也是接口的作用,也是很多时候所说的面向接口编程。
回复

使用道具 举报

千问 | 2010-3-26 18:25:33 | 显示全部楼层
要另外写也可以啊不过方法名不好命名重写只是一种机制你不用完全可以的 代码写多了你就知道好处了就像重载 为什么要重载 为什么不另外命名
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行