在Kotlin中,一个类只能继承一个普通类或者抽象类。通过接口我们可以进行多实现
interface
interface Demo{
}
接口冲突
例如:
interface Apple{
fun printSelf()
fun give() = print('')
}
interface Banana{
fun printSelf() = println("")
fun give = print("")
}
class Person : Apple,Banana{
override fun printSelf() {
}
override fun give() {
super<Apple>.give()
super<Banana>.give()
}
}
在这里,大家应该看到了Apple和Banana这两个接口都声明了give方法,实现了这两个接口的Person类,在实现give方法时使用super<接口或超类的名称>.方法
枚举类中的每一个枚举常量都是一个对象,并且他们之间用逗号分隔。
例如:
/**
* 例:关于一个网络请求结果的枚举类
*/
enum class State{
/*
NORMAL : 正常
NO_DATA : 数据为空
NO_INTERNET : 网络未连接
ERROR : 错误
OTHER : 其他
*/
NORMAL,NO_DATA,NO_INTERNET,ERROR,OTHER
}
fun main(args: Array<String>) {
ConsoleColor.BLACK.print()
}
enum class ConsoleColor(var argb : Int){
RED(0xFF0000){
override fun print() {
println("我是枚举常量 RED ")
}
},
WHITE(0xFFFFFF){
override fun print() {
println("我是枚举常量 WHITE ")
}
},
BLACK(0x000000){
override fun print() {
println("我是枚举常量 BLACK ")
}
},
GREEN(0x00FF00){
override fun print() {
println("我是枚举常量 GREEN ")
}
};
abstract fun print()
}