当我在Kotlin项目的中间工作时,我感到困惑,例如子类是实现另一个父类还是实现接口?就像我正在从jar中使用一些我不太了解的接口和类一样,有人会向我解释解决此问题的方法,因为我是kotlin的新手。
例如:
一个类定义
abstract class Employee (val firstName: String, val lastName: String) {
abstract fun earnings(): Double
}
Run Code Online (Sandbox Code Playgroud)
这是由其他班级扩展的
abstract class Employee (val firstName: String, val lastName: String) {
// ...
fun fullName(): String {
return lastName + " " + firstName;
}
}
Run Code Online (Sandbox Code Playgroud)
同样的接口
class Result
class Student
interface StudentRepository {
fun getById(id: Long): Student
fun getResultsById(id: Long): List<Result>
}
Run Code Online (Sandbox Code Playgroud)
接口实现
class StudentLocalDataSource : StudentRepository {
override fun getResults(id: Long): List<Result> {
// do implementation
}
override fun getById(id: Long): Student {
// do implementation
}
}
Run Code Online (Sandbox Code Playgroud)
在Kotlin中,要从类继承,您必须编写其主要构造函数,因此,您始终会看到父类,后跟(),有时里面有东西。
接口不需要这个。您只需编写接口的名称即可。
因此,如果在名称后看到方括号,则为父类。否则,它是一个接口。
| 归档时间: |
|
| 查看次数: |
289 次 |
| 最近记录: |