黑马程序员技术交流社区

标题: 看视频遇到的接口问题 [打印本页]

作者: 梁健    时间: 2011-11-17 22:55
标题: 看视频遇到的接口问题
有些接口会声明一些方法或者常量在里面,可为什么很多接口就只定义了一个接口名,{}里面却是空的。那接口在这里又起了什么作用呢
作者: 梦女孩    时间: 2011-11-17 23:01
归纳的作用,为之后改进留一手后招。
定义一个空接口,那么它的实现类可以随便写。
一旦有一天,我想把这些实现类都统一加一个方法,我要是挨个去找很容易漏掉1-2个,到时候调用起来会出错,尤其是反射调用的时候。
那么我不如就在这个空接口中加一个定义进去,那么它所有的实现类就必须都强制的更改,否则就会报错。
这样不是很方便么。
作者: 清秋    时间: 2011-11-17 23:02
视频中讲到这些

        接口,初期可以理解为一个特殊的抽象类
        当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示

        接口定义时,格式特点:
        1.接口中常见定义:常量,抽象方法
        2.接口中的成员都有固定修饰符
                常量:public static final
                方法:public abstract

        接口 不可以创建对象的,因为有抽象方法
        需要被子类实现,子类对接口中的抽象方法全部覆盖后,子类才可以实例化
        否则子类是一个抽象类

楼主说的。接口{}里是空,有什么例子没,让你的问题更清晰些。

作者: 咪咪    时间: 2011-11-17 23:11
接口主要就是为了程序的扩展性而出现的,所以如果里面定义的太复杂的话就不用接口了,出现接口弥补了类不能一个子类继承多个父类的缺陷。
作者: 刘永昌    时间: 2011-11-17 23:16
理论上来讲,楼主所述“很多接口就只定义了一个接口名,{}里面却是空的”的种情况是不被允许存在的,应为你加了  {}  那就意味着有方法体,尽管方法体是不含代码的,这种接口声明方式是不被允许出现在接口里的

Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
作者: 常文艺    时间: 2011-11-18 01:20
为以后的扩展留空间。
作者: 高双武    时间: 2011-11-18 07:21
可以利用多态特性
作者: 赵磊5    时间: 2011-11-18 07:53
java不允许多重继承,也就是说一个子类只能有一个父类.为了弥补这点不足,java允许实现多个接口.接口中的方法没有实体,接口中的方法都是abstract的,可以看作是一个特殊的抽象类。如果一个类实现了这个接口,那么它必须实现这个接口中的所有方法才可以创建对象,否则还是一个抽象类。
作者: 小王同志    时间: 2011-11-18 09:13
方便以后修改添加功能用的,就是传说中的提高扩展性




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2