继承


java中的继承,子类继承了父类所拥有的方法并在这个基础上保有一些自己的“特点(方法)”。
它的好处就是不用因为新的需要而重新写类(类中出现较多的重复代码),我们只需要去写一个针对新需要的含有新“特性(方法)”的类(子类),去继承含有我们所需的方法的类(父类)。从而简化了我们的编写过程,再某些方面,也使程序更加有条理。

继承还有一个好处,就是可以做到上溯造型,即把衍生类型(子类型)当作它的基本类型(父类型)处理的过程。
thinking in java 的关于shap的例子已经讲得非常清楚:
我们用Java写了这样一个函数:
void doStuff(Shape s) {
  s.erase();
  // ...
  s.draw();
}

我们在一些程序里调用这个函数,
Circle c = new Circle();
Triangle t = new Triangle();
Line l = new Line();
doStuff(c);
doStuff(t);
doStuff(l);
一个Circle(圆)句柄传递给一个本来期待Shape(形状)句柄的函数。由于圆是一种几何形状,所以doStuff()能正确地进行处理。也就是说,凡是doStuff()能发给一个Shape的消息,Circle也能接收。所以这样做是安全的,不会造成错误。
需要注意的是,子类与父类之间不可以有相同的方法,即子类里的方法不得对父类中的方法进行覆盖,如何避免这一问题呢?我们可以利用final来进行限制。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值