所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

为什么接口中不能定义变量?

发布时间:2020-04-12 09:14:02

资讯分类:变量  接口  定义  报错  的是  都是
为什么接口中不能定义变量?

因为接口默认的是public static final的,所以都是常量,没有变量。

public interface A { int a = 1; //此处报错,没有初始化 char aa; Object obj = new Object();}class AA implements A { public void s() { //此处报错,a为final的不能在赋值 A.a = 1; }}

为什么接口中不能定义变量?

接口不是不能定义final,接口中的变量是public static final所修饰的(是常量)方法是public abstract所修饰的,那个答案有错接口是对外扩展功能用的,所以只能是public(私有的写成接口有什么用,就好比你电脑的usb插槽是不是只能在外边?假如你把插槽封装到机壳里面有什么意义?)abstract就是和抽象类一样接口可以大致理解为一个特殊的抽象类,里面所有方法都是抽象的抽象类和接口都不能实例化(因为实例化出来的方法没有方法体,没有意义)一个类implement一个接口时必须要实现所有内部的抽象方法,否则会报错

留言与评论(共有 0 条评论)
   
验证码:
Top