我能从Kotlin的AndroidAnnotation中使用@Bean吗?
我AndroidAnnotation
Kotlin
AndroidAnnotation
中使用@Bean
吗?
@EActivity(R.layout.activity_test) open class TestActivity : AppCompatActivity() { @Bean var test:TestBean //<-- IDE shows "property must be initialized or abstract"
这是我的Bean
声明
@EBean class TestBean { fun printShit(){ Log.e("ASDF","ASDF") } }
这有可能吗? 或者我必须使用kotlins object
呢?
您可以将其标记为lateinit
以避免对其进行初始化。
@Bean lateinit var test: TestBean
通过这样做,你告诉编译器,你确定它会在你第一次使用它之前被初始化。 如果它没有被初始化,并且尝试使用它,则会抛出异常。