[kotlin] 추상 메서드의 사용 이유와 장점
추상 메서드는 클래스에서 구현을 강제하는 메서드로, 구체적인 구현은 하위 클래스에게 위임됩니다. 추상 메서드를 사용하는 이유와 여러 장점들이 있습니다.
이유
추상 메서드는 상속을 통해 다형성을 구현하는 데 도움이 됩니다. 상위 클래스에서 인터페이스를 정의하고, 하위 클래스에서는 해당 인터페이스를 구현함으로써 상속 관계의 일관성을 유지할 수 있습니다.
장점
유연성
추상 메서드를 사용하면 여러 하위 클래스에서 다양한 구현을 제공할 수 있습니다. 이로써 소스 코드의 유연성이 높아지며, 새로운 기능을 추가하거나 기존의 기능을 변경하기 쉬워집니다.
계층 구조의 일관성
추상 메서드를 통해 상위 클래스에서 인터페이스를 정의함으로써, 상속 계층 구조의 일관성을 유지할 수 있습니다. 이는 코드의 가독성과 유지보수성을 향상시킵니다.
코드 재사용
추상 메서드를 사용하면 각 하위 클래스에서 중복되는 코드를 피하고, 공통 로직을 상위 클래스에서 처리할 수 있습니다. 이로써 코드의 재사용성이 높아집니다.
예제
abstract class Shape {
abstract fun calculateArea(): Double
}
class Circle(val radius: Double) : Shape() {
override fun calculateArea(): Double {
return Math.PI * radius * radius
}
}
class Square(val sideLength: Double) : Shape() {
override fun calculateArea(): Double {
return sideLength * sideLength
}
}
위의 예제에서는 Shape
클래스의 calculateArea
메서드를 추상 메서드로 선언하여, 각 도형에 따라 다른 구현을 하도록 합니다.
결론
추상 메서드를 사용하면 코드의 유연성과 재사용성을 높일 수 있으며, 상속 관계의 일관성을 유지할 수 있습니다. 이는 객체 지향 프로그래밍의 핵심 개념 중 하나이며, 적절하게 활용함으로써 효율적이고 유지보수성이 높은 소프트웨어를 개발할 수 있습니다.
참고문헌: Kotlin 공식 문서