[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에서 추상 클래스에서의 접근 제어 지시자 사용 예시에 대해 알아보았습니다.
데이터 출처:
- https://kotlinlang.org/docs/classes.html#modifiers