深入理解Java中的多态性
1. 多态性概述
在科幻电影中,外星人有时会根据需要从一种形态转变为另一种形态。“Morph”在希腊语中意为“形状”,前缀“poly”表示“许多”,因此“polymorph”意味着“多种形状”。电影中的外星人就是真正的多态。在Java中,代表核心思想的类可以通过其子类以不同的方式进行“变形”。
Java提供了两种实现多态性的方式:继承和接口。这两种方式都依赖于两个或多个类,这些类要么继承同一个类,要么实现同一个接口。
2. 跳舞机器人示例
2.1 定义跳舞机器人
我们定义了两个奇特的跳舞机器人,一个向左跳舞,另一个向右跳舞,它们在移动到下一个交叉点时进行舞蹈。以下是实现向左跳舞机器人 LeftDancer 的代码:
import becker.robots.*;
/** LeftDancers dance to the left as they move forward.
*
* @author Byron Weber Becker */
public class LeftDancer extends RobotSE
{
public LeftDancer(City c, int str, int ave, Direction dir)
{
super(c, str, ave, dir);
this.setLabel("L");
}
/** Dance to the left. */
public void move(
超级会员免费看
订阅专栏 解锁全文
994

被折叠的 条评论
为什么被折叠?



