当前位置: 备案域名出售 > 建站教程>正文

用继承扩展interfere

实现多个接口的时候可能会遇到一些问题。例如,Can和Action都有一个一模一样的fight()方法。这里没有问题,因为它们使用的是同一个方法。但是,有个难题要归因于覆写、实现和重载的不期而遇,以及“不能仅通过返回值来辨别重载的方法。如果把最后两行的注释去掉,就会出现错误。而且在要并的接口里面放上同名的方法,通常也会破坏程序的可读性,所以别这么做。

你可以用继承,往interface里面添加新的方法,也可以用继承把多个interface合并成一个新的interface。在这两种情况下,你所得到的都只是一个新的interface。但是我们用Dang对Monster做了一点扩展,然后生成一个新的interface,这样就实现了这个接口。

Vampire的语法是接口继承所独有的。通常情况下,extends只能用于类,但是由于一个interface可以由多个接口拼接二次,因此创建新的interface的时候可以用extends来表示其多个基接口,interface的名字要由逗号分割。接口所定义的数据都自动是static和final的。它们不能是空白的final数据成员,但是可以用非常量的表达式来对它们进行初始化。

« 上一篇下一篇 »