重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
相信大家很多时候都有用到匿名内部类,完成一些操作逻辑;例如:网络数据回调、开启子线程、刷新UI等;
使用原生java开发很方便,就是直接new个对象,实现/重写必要的函数;但是在kotlin中是不支持直接实例化抽象类的。
例如:
abstarct class TestClass implements Runnable{
public void test(){}
}
原生java实现
new Thread(new TestClass(){
public void run(){
}
}).start();
kotlin实现(错误的)
Thread(TestClass(){
override fun run() {
}
override fun test() {
super.test()
}
}).start()
Thread(object: TestClass(){
override fun run() {
}
override fun test() {
super.test()
}
}).start()