kotlin中,声明entity实体类之间的继承,推荐的声明方式是哪种?实体类的属性有id,name,age等字段,其中id是公共字段
时间: 2024-02-24 22:56:15 浏览: 104
Kotlin中实体类的创建方式
在 Kotlin 中,声明实体类之间的继承,推荐使用`open class`和`abstract class`关键字。其中,`open class`关键字用于声明可被继承的类,而`abstract class`关键字用于声明抽象类,抽象类不能被实例化,只能被继承。
对于实体类的属性,可以在父类中声明公共字段,使用`open`关键字表示可被重写,例如:
```
open class BaseEntity(open val id: Long, open val name: String, open val age: Int)
```
这里声明了一个 BaseEntity 类,其中包含 id、name 和 age 三个字段,使用`open`关键字表示这些字段可被重写。其他类可以继承 BaseEntity 类,并重写其中的字段,例如:
```
class User(override val id: Long, override val name: String, override val age: Int, val email: String) : BaseEntity(id, name, age)
```
这里声明了一个 User 类,继承了 BaseEntity 类,并增加了一个 email 字段。在构造函数中需要传入 id、name 和 age 三个参数,并调用父类的构造函数来初始化这些字段。
需要注意的是,在子类中重写父类中的字段时,需要使用`override`关键字。同时,在构造函数中传入父类的字段时,也需要使用`super`关键字来调用父类的构造函数。
阅读全文