黑马程序员技术交流社区

标题: 【已解决】接口中可不写public [打印本页]

作者: 童兴龙    时间: 2012-8-25 19:13
标题: 【已解决】接口中可不写public
本帖最后由 童兴龙 于 2012-8-26 08:10 编辑

接口中可不写public,但在子类中实现接口的过程中public不可省。
这是什么道理啊?是因为继承关系的权限必须要大于父类声明的权限?还有为什么一个文件只能有一个class是public的?
作者: 方志亮    时间: 2012-8-25 19:31
接口里面的所有属性都为public static final的,即使你不写出来,也会被默认为这样的,接口里面的方法是且只能是public,就算你在接口里不写,那也是默认的public的,但在用类实现接口的时候,必须将方法写为public的,不能不写,应为不写会被默认为是default的,这样权限就发生变化了,就会出错。

    public interface:公开接口
与类相似,一个文件只能有一个public接口,且与文件名相同。
在一个文件中不可同时定义一个public接口和一个public类。

一个接口中,所有方法为公开、抽象方法;所有的属性都是公开、静态、常量。
作者: 刘源    时间: 2012-8-25 19:35
本帖最后由 刘源 于 2012-8-25 19:41 编辑

接口定义时,格式特点:
1,接口中常见定义:常量,抽象方法。
2,接口中的成员都有固定修饰符。
常量:public static final
方法:public abstract
记住:接口中的成员都是public的。
所以你要实现接口都必须是publlic.
作者: 吴通    时间: 2012-8-25 21:53
接口中的成员都有固定的修饰符
常量为:public static finally
方法为:public abstract
所以接口中的成员都是public的
只要是你定义了一个接口,系统就默认你里面的成员全部public
所以public可以写也可以不写
但是当你要实现接口的时候,必须权限要大于等于public权限才行,
而Java中public权限最大,故接口是public,子类必须要写public
作者: 唐见    时间: 2012-8-25 22:05
哇,你们真速度
作者: 童兴龙    时间: 2012-8-26 08:09
方志亮 发表于 2012-8-25 19:31
接口里面的所有属性都为public static final的,即使你不写出来,也会被默认为这样的,接口里面的方法是且 ...

谢了!说的很具体。
作者: 童兴龙    时间: 2012-8-26 08:10
谢谢大家了。




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