1. 创建匿名内部类
1)对象表达式
常规方式,一般用于实现的接口有多个方法要实现
val observer = object : Observer<Int> {
override fun onComplete() {
TODO("Not yet implemented")
}
override fun onSubscribe(d: Disposable?) {
TODO("Not yet implemented")
}
override fun onNext(t: Int?) {
TODO("Not yet implemented")
}
override fun onError(e: Throwable?) {
TODO("Not yet implemented")
}
}
2) lambda 表达式
一般用于实现的对象实例是一个函数接口(Java中只有一个抽象方法的接口)
button.setOnClickListener {
val intent = Intent(this, TheActivity::class.java)
intent.putExtra("name", "Yang")
startActivity(intent)
}