접근제어자, 상속 그리고 override

접근 제어자와 상속의 관계

class Parent {
    open var op = 1
    public var pu = 2
    internal var int = 3
    fileprivate var fp = 4
    private var pr = 5
}

class Child: Parent {}

같은 파일 내

open ~ fileprivate 까지 접근 사용 가능

다른 파일 내

open ~ internal 까지 사용가능

fileprivate는 사용 불가능

저장 프로퍼티의 Override

class Parent {
    var val = 54
}

class Child: Parent {
    override var val: Int {
        get { 20 }
        set {}
    }
}

저장 프로퍼티 -> 연산 프로퍼티로 변환해서 override 가능

But let은 override 불가능