Kotlin中的open关键字
在java中允许创建任意的子类并重写方法任意的方法,除非显示的使用了final关键字进行标注。
而在kotlin的世界里面则不是这样,在kotlin中它所有的类默认都是final的,那么就意味着不能被继承,而且在类中所有的方法也是默认是final的,那么就是kotlin的方法默认也不能被重写。那么想在kotlin中继承父类应该怎么做呢?
-
为类增加open,class就可以被继承了
open class Person{ }
-
为方法增加open,那么方法就可以被重写了
open class Person{ open fun eat(food: String) { } } open class Man:Person(){ override fun eat(food: String) { super.eat(food) } }
网友评论