加载中...

简单匿名类

java:

new Thread(new Runnable() {
 @Override
 public void run() {
 System.out.println("Thread is running");
 }
}).start();

如果我们在Kotlin代码中调用了一个Java方法,并且该方法接收一个Java单抽象方法接口参数,就可以使用函数式API。
Java单抽象方法接口指的是接口中只有一个待实现方法,如果接口中有多个待实现方法,则无法使用函数式API。

kotlin:

Thread(object : Runnable {
 override fun run() {
 println("Thread is running")
 }
}).start()

由于目前Thread类的构造方法是符合Java函数式API的使用条件的,所以对代码进行精简:

Thread(Runnable {
 println("Thread is running")
}).start()

最终简化结果如下:

Thread {
 println("Thread is running")
}.start()
posted @ 2022-09-06 15:12  biubidio  阅读(41)  评论(0)    收藏  举报