![]() ![]() | |
与类相似,接口也定义一种新的数据类型。任何实现某个接口的类都可被看作属于该接口所定义的类型。这有助于确定给定的对象是否实现了给定的接口。例如,考虑一下以下接口。
interface Movable {
function moveUp();
function moveDown();
}
现在,考虑一下实现 Movable 接口的 Box 类。
class Box implements Movable {
var x_pos, y_pos;
function moveUp() {
// 方法定义
}
function moveDown() {
// 方法定义
}
}
然后,在另一个创建了 Box 类的实例的脚本中,您可以声明一个 Movable 类型的变量。
var newBox:Movable = new Box();
在 Flash Player 7 和更高版本中,可在运行时为表达式指定接口类型。如果该表达式是一个实现该接口的对象,或具有实现该接口的超类,则返回该对象。否则,将返回 null。这可用于判断特定对象是否实现了某个接口。
例如,以下代码首先检查对象名 someObject 是否实现了 Movable 接口,然后对该对象调用 moveUp() 方法。
if(Movable(someObject) != null) {
someObject.moveUp();
}
![]() ![]() | |