黑马程序员技术交流社区

标题: interface中的抽象方法问题 [打印本页]

作者: 暴风    时间: 2014-10-7 22:58
标题: interface中的抽象方法问题
interface是抽象类的一种特殊情况吗?interface中的方法都是抽象方法,这些抽象方法都必须声明为abstract吗?
张孝祥老师的书中说抽象类中的抽象方法必须声明为abstract。

作者: tiancairc    时间: 2014-10-7 23:13
接口是一种特殊的类,是由全局常量和公共的抽象方法所组成,在定义中已经明确声明由全局常量和抽象方法组成。所以全局常量和抽象方法可以有一下简写情况:String XXXX=“AAABBN”;void test(){}。不必在前面再加abstrct。关于接口和抽象类我们可以把它理解成特殊的类,无需再纠结这个问题了。朋友
作者: clevergump    时间: 2014-10-8 00:04
接口中的抽象方法,你可以显式地声明为abstract,也可以不写abstract(那么此时系统会默认给你强行加上这个abstract),至于张老师说的“必须加”,那可能只是害怕学生记不住,于是就干脆强制要求加上嘛。另外,在大企业(比如华为)的 java 编程规范里,是明确要求省略掉 abstract 的。
作者: inception    时间: 2014-10-8 00:20
对,在抽象类中你必须写abstract。但在接口中你可以省略不写,因为默认的会给你加上 。毕老师视频中有,  接口中的方法的public  abstract   可以省略,要记住,子类实现接口中的方法一定要写public
作者: 暴风    时间: 2014-10-8 00:43
clevergump 发表于 2014-10-8 00:04
接口中的抽象方法,你可以显式地声明为abstract,也可以不写abstract(那么此时系统会默认给你强行加上这个 ...

嗯!他说的是抽象类必须加,没说接口必须加。呵呵!
作者: 暴风    时间: 2014-10-8 00:45
inception 发表于 2014-10-8 00:20
对,在抽象类中你必须写abstract。但在接口中你可以省略不写,因为默认的会给你加上 。毕老师视频中有,   ...

学习了!谢谢!
作者: 暴风    时间: 2014-10-8 00:46
clevergump 发表于 2014-10-8 00:04
接口中的抽象方法,你可以显式地声明为abstract,也可以不写abstract(那么此时系统会默认给你强行加上这个 ...

多谢指教!
作者: clevergump    时间: 2014-10-8 01:01
暴风 发表于 2014-10-8 00:46
多谢指教!

不用谢,互相学习!




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