Android studio 关键字对象在Kotlin中是什么意思?
代码A来自 我无法完全理解代码pAndroid studio 关键字对象在Kotlin中是什么意思?,android-studio,kotlin,Android Studio,Kotlin,代码A来自 我无法完全理解代码private val volumeDownReceiver=object:BroadcastReceiver() 我认为代码B可以很好地工作,但实际上它失败了 关键字对象在Kotlin中是什么意思 代码A private val volumeDownReceiver = object : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) {
rivate val volumeDownReceiver=object:BroadcastReceiver()
我认为代码B可以很好地工作,但实际上它失败了
关键字对象在Kotlin中是什么意思
代码A
private val volumeDownReceiver = object : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
...
}
}
代码B
private val volumeDownReceiver = BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
...
}
}
在代码A中
val volumeDownReceiver=object:BroadcastReceiver()
指创建从类型BroadcastReceiver
继承的匿名类的对象
在代码B中,val volumeDownReceiver=BroadcastReceiver()尝试实例化一个抽象类的新实例,这就是它失败的原因
编辑:链接到文档:
对象
关键字也可用于创建。使用它,您是说您希望覆盖具体或抽象成员的一个或多个成员。这样,您就不需要创建一个单独的类来根据您的需要调整功能。我建议你读一读。