java中的“implements”关键字?

时间:2013-04-04 12:05:41

标签: java

我是Android开发的新手,我已经完成了一些代码并找到了以下代码行:

class Preview extends SurfaceView implements SurfaceHolder.Callback {
}

有人可以解释或给我一些暗示这里真正发生的事情,特别是在工具SurfaceHolder.Callback上吗?

感谢

3 个答案:

答案 0 :(得分:1)

在Java中implements SurfaceHolder.Callback表示您正在实现"Interface" SurfaceHolder.Callback。如果实现接口意味着您必须在接口SurfaceHolder.Callback中定义所有方法。它会自动询问您实施"ALL abstract method"

答案 1 :(得分:1)

Java中的“implements”关键字要求所定义的类还包括在指定的Interface类中定义的所有方法签名的声明和定义。

在提供的示例中,SurfaceHolder.Callback是一个接口,并声明了一组方法。因此,根据定义,新类Preview也声明了相同的方法。在大多数情况下,这些方法已经被定义为Interface类的一部分,但不一定如此。程序员可以根据需要覆盖这些方法,但是Preview类的用户在不知道任何其他内容的情况下,可以通过简单地引用或与其对象作为SurfaceHolder.Callback对象来编写更通用且可重用的代码。

答案 2 :(得分:0)

当一个类implements接口时,它意味着该类的实例(在您的情况下为Preview)被强制包含接口(SurfaceHolder.Callback)的方法的定义暴露。

这也意味着您可以使用任何返回类实例(Preview)或其子类的表达式,只要需要接口类型(SurfaceHolder.Callback)的表达式。