Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- interface A {
- val myVal: Boolean
- var myVar: Boolean
- }
- //no problem
- class B : A {
- override val myVal = false
- override var myVar = false
- }
- class C : A {
- override val myVal: Boolean
- get() = false
- override var myVar: Boolean //no compile error
- get() = false
- set(value) {} //warning:redundant setter
- }
- class D : A {
- override val myVal: Boolean
- get() = false
- override var myVar: Boolean //compile error : property must be initalized
- get() = false
- set(value) { field= value} //warning:redundant setter
- }
- class E : A {
- override val myVal: Boolean
- get() = false
- override var myVar: Boolean = false
- get() = false
- set(value) { field = value} //warning:redundant setter
- }
- class F : A {
- override val myVal: Boolean
- get() = false
- override var myVar: Boolean = false
- get() = false
- set(value) { field= field} //no warning: ignore new value
- }
Add Comment
Please, Sign In to add comment