私はKotlinコンパイラはTがkotlin.Any class Foo<T> (val t: T){
val cls = t.javaClass // Error, T is not a subtype of kotlin.Any
}
のサブタイプではないと文句を言い、ジェネリック型TののJavaClassにアクセスしようとした場合 Tをサブタイプとして定義する場合は、すべてが正
私はいくつかのクラスの階層を作成しようとしています。それぞれのクラスは親クラスの内部クラスでいくつかの動作をオーバーライドしています(具体的にはイテレータですが問題ありません)。基本的には、次のようになります。 open class SuperClass<T>{
protected open inner class InnerClass{
fun someLogic(){
Kotlinには、オブジェクトの内部に変数を宣言する方法が2つあり、オブジェクトを作成した後にnullにしてインスタンス化することができます。 var myObject : Any? = null
または var lateinit myObject : Any
私たちはただのvar NULL可能を作成し、後でそれを割り当てることができるかどうlateinitキーワードが必要な理由について混