

あるJavaのクラスをKotlinで継承し，他のメソッドに影響を与えないように１つのメソッドだけOverrideしたいのですがエラーが出て困っています．

元のJavaのクラスでは`private String`と表現されているフィールドが，継承したKotlinのクラスでは`final
val`と解釈されており，メソッド内で`set`が出来ないと言った状態です．

Java:

[code]

    public class J {
        private String a;
        public String getA() {
            return a;
        }
        void m() {
            a = "hello";
        }
        void m2() {
            System.out.println(a);
        }
    }
    
[/code]

Kotlin:

[code]

    open class K(): J() {
        override fun m() {
            a = "helloK" // "Val cannot be reassigned"
        }
    }
    
[/code]


CC BY-SA 3.0
2017-03-12T08:50:11.030
33272
2017-03-12T08:50:11.030
16964
question
android java kotlin
JavaのクラスをKotlinで継承し，特定のメソッドだけOverrideしたい