Java编程那些事儿62——继承
http://tech.ddvip.com 2008年09月08日 社区交流
本文详细介绍Java编程那些事儿62——继承
8.5.2.3 方法覆盖
前面介绍了继承的一些基础知识,现在介绍一些在使用继承时需要注意的问题。熟悉这些问题将更好的解决项目中的实际问题。
例如在实际的游戏中,会按照怪物的种类实现设计。首先设计一个基础类Monster,然后按照怪物类别设计Monster的子类,如Boss、NormalMonster等。则在实际实现时,每个怪物都有移动(move)的功能,但是在Boss和NormalMonster的移动规则存在不同。这样就需要在子类的内部重新编写移动的功能,从而满足实际的移动要求。该示例的实现代码如下:
//Monster.java
public class Monster{
public void move(){
//移动功能
}
}
//Boss.java
public class Boss extends Monster{
public void move(){
//Boss类的移动规则
}
}
//NormalMonster.java
public class NormalMonster extends Monster{
public void move(){
// NormalMonster类的移动规则
}
}
这样在Monster的每个子类内部都重新书写了move方法的功能,这种在子类内部重新父类中的方法的语法现象,称作方法覆盖(override)。
来源:blog.csdn 作者:陈跃峰 责编:豆豆技术应用