版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Leslie_LN/article/details/82981272
接口
语法格式
[修饰符] interface 接口名:父接口1,2..N{
0-N个属性定义
0-N个方法定义(包括抽象方法、非抽象方法)
0-N个嵌套类、接口、枚举类
}
修饰符
接口访问修饰符:public、internal、private之一,或者省略不写,省略默认是public
Kotlin中接口和java中接口区别:java中所有成员都会自动使用public修饰,并且这些成员也是能使用public修饰符;kotlin接口中成员支持public、private两种修饰符
- 抽象方法、抽象属性只能是public修饰符,如果不加访问修饰符,系统默认添加public修饰符
- 对于不需要重写的成员(非抽象方法、嵌套类、非抽象属性)可以使用private或者public修饰,不加默认使用public修饰符5
属性
接口中的属性没有幕后字段,无法保存状态,所以接口中的属性要么声明为抽象属性,要么为属性提供setter、getter方法
- 如果可读(val)属性没有提供getter方法,系统默认为该属性添加abstract修饰符
- 如果读写(var)属性没有提供getter、setter方法,系统默认为该属性添加abstract修饰符
构造器、初始化块
接口中没有构造器、初始化块
方法
既可以是抽象方法,也可以是非抽象方法
- 方法没有方法体,系统默认会为方法添加abstract