Android kotiln无法在抽象类中导入内部类
将旧Java代码转换为kotlin时出错 为了解决这个问题,我用示例代码编写了当前的问题Android kotiln无法在抽象类中导入内部类,android,kotlin,abstract-class,inner-classes,extends,Android,Kotlin,Abstract Class,Inner Classes,Extends,将旧Java代码转换为kotlin时出错 为了解决这个问题,我用示例代码编写了当前的问题 abstract class AbClass { open inner class Test { } } 继承AbClass的属性 class ExClass : AbClass() { private class T : AbClass.Test() { //Error AbClass.Test() UnResolved reference: Te
abstract class AbClass {
open inner class Test {
}
}
继承AbClass的属性
class ExClass : AbClass() {
private class T : AbClass.Test() {
//Error AbClass.Test() UnResolved reference: Test
}
}
为什么我不能参加考试
将Java代码转换为Kotlin时就变成了这样。AbClass在Java中就是这样。当您使用关键字inner时,这意味着内部类可以引用外部类 当扩展AbClass时,您声明类T而不使用内部关键字,这意味着kotlin将其生成为静态类。基本上,静态类不引用外部类,这可能是类T和类测试之间的冲突。因此,如果使用关键字internal,它也应该在类T中声明。确保它是那样声明的
class ExClass : AbClass() {
private inner class T : AbClass.Test() {
}
}
class ExClass : AbClass() {
private inner class T : AbClass.Test() {
}
}