[kotlin] 추상 클래스에서의 접근 제어 지시자 사용 예시

추상 클래스는 일반 클래스와 마찬가지로 접근 제어 지시자를 사용하여 멤버 변수와 메서드에 대한 접근을 제어할 수 있습니다. 이제 추상 클래스에서의 접근 제어 지시자 사용 예시를 살펴보겠습니다.

접근 제어 지시자

접근 제어 지시자에는 public, protected, private 등이 있으며, 이를 사용하여 클래스 외부에서 클래스의 멤버 변수와 메서드에 대한 접근을 제어할 수 있습니다.

예시

다음은 Kotlin에서 추상 클래스에서의 접근 제어 지시자를 사용한 예시입니다.

abstract class Shape {
    // 접근 제어 지시자를 사용하여 멤버 변수 설정
    protected var color: String = "red"
    private var opacity: Int = 50

    // 접근 제어 지시자를 사용하여 메서드 설정
    protected fun getColor(): String {
        return color
    }

    // 추상 메서드
    abstract fun draw()
}

class Circle : Shape() {
    override fun draw() {
        println("Drawing a circle")
        // 접근 제어 지시자로 설정된 color 변수와 getColor() 메서드에 접근
        println("Color: ${getColor()}, Opacity: $opacity") 
    }
}

위의 예시에서, Shape 추상 클래스의 color 변수와 getColor() 메서드는 protected로 설정되어 있기 때문에 Circle 클래스에서 접근할 수 있습니다. opacity 변수는 private로 설정되어 있기 때문에 하위 클래스에서 직접 접근할 수 없습니다.

결론

추상 클래스에서의 접근 제어 지시자를 사용하여 멤버 변수와 메서드에 대한 접근을 제어할 수 있습니다. 이를 통해 캡슐화를 유지하고 상속 관계에서 적절한 접근 제어를 할 수 있습니다.

이상으로 Kotlin에서 추상 클래스에서의 접근 제어 지시자 사용 예시에 대해 알아보았습니다.

데이터 출처: