黑马程序员技术交流社区

标题: 接口里面的方法都是抽象方法么 [打印本页]

作者: 李晓俊老师    时间: 2012-2-26 23:25
标题: 接口里面的方法都是抽象方法么
本帖最后由 李晓俊 于 2012-2-28 18:41 编辑

接口里面的方法都是抽象方法么
作者: 少威    时间: 2012-2-26 23:30
是滴,方法是public的,即使你没有显式的表明,它也是public的
接口中也可以有域变量,但必须是static和final的
作者: 房宝彬    时间: 2012-2-27 00:06
老李{:soso_e102:}
作者: 周峰    时间: 2012-2-27 00:19
接口里定义的方法 必须是没有方法体! 否则将会编译错误。
接口的方法都没有方法体 , 所以都是抽象方法!
接口的实现类必须都要重写接口中的方法!

一般情况下都是用接口去 new 出一个实现类 的对象, 然后用接口去调同实现类里面的方法,这样的话在接口里面都是Public的修饰。
在接口中可以定义变量, 但是必须在前面修饰 静态的 常量的,  变量名 全大写。
作者: 熊玖帅    时间: 2012-2-27 00:53
接口里的方法,默认都是抽象的,不用直接写abstract修饰了
因为java用接口这个关键字来声明,在接口里定义的都是抽象的,必须被实现类实现的!
作者: 蒙武辉    时间: 2012-2-27 02:41
接口的是一个比较特出的抽象类,当抽象类里的方法都是抽象时,那么可以通过接口的形式来表现。
作者: 老罗    时间: 2012-2-27 08:58
房宝彬 发表于 2012-2-27 00:06
老李

老房
作者: 朱皓    时间: 2012-2-27 09:22
是的,而且必须是抽象的,抽象的作用就是为子类提供一个行为上的定义,但具体的实现由子类去做,这就是多态
作者: 王康    时间: 2012-2-27 11:01
先了解抽象类的含义,再比对抽象类和接口的异同.
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为改类声明方法,但不能在改类中实现改类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让他指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类。取而代之,在子类中实现改方法。知道其行为的其他类可以在类中实现这些方法。
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这些接口而获得。接口中的所有方法都是抽象的,没有一个程序体。接口只可以定义static final 成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,他说可以在实现了该接口的类中的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。

作者: 袁野    时间: 2012-2-28 16:17
接口中的方法一定是抽象的 public 在子类中实现




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