我正在intelij Idea中学习kotlin,因此我必须进行有关接口的演示。一个主题是回调,在哪里可以找到有关它的信息?还是可以简单地,非常简单地告诉我,那叫什么回电话?
fun main() {
val myphone = Myphone()
myphone.phoneOn()
myphone.onClick()
myphone.onTouch()
myphone.openApp()
myphone.closeApp()
}
interface Application {
var AppName: String
fun openApp()
fun closeApp() {
println("$AppName App is closed!")
}
}
interface Button {
var helloMessage: String
fun phoneOn()
fun onClick()
fun onTouch() {
println("The screen was touched!")
}
}
class Myphone: Button, Application {
override var AppName: String = "Facebook"
override fun openApp() {
println("$AppName Is Open!")
}
override var helloMessage: String = "Hello"
override fun onClick() {
println("The screen was clicked!")
}
override fun phoneOn() {
println("$helloMessage !")
}
}
答案 0 :(得分:0)
回调不仅与Kotlin有关,它是非常普遍的编程技术,主要用于异步编程。最简单的解释是一旦发生异步事件,该函数将被回调(因此得名)。
Button的onClick函数就是一个很好的例子,我们有一些逻辑需要执行,但是我们希望它仅在单击按钮时才运行,因此我们提供了在单击该按钮时将调用的回调。
答案 1 :(得分:0)
非常简单:回调表示函数,该函数在另一个函数完成或某些特定事件发生时执行。
fun execute() {
// Some logic
executeAnotherOnFinish();
}
OR
// filter executes only after array converted to list
myIntArray.toList().filter { it > 0 }
OR
myListener.notify()
// Listener class methid
notify() {
// Do some work
executeCallback()
}