[kotlin] 추상 클래스를 상속받아 객체를 생성하는 방법

Kotlin은 객체 지향 프로그래밍 언어이며, 추상 클래스를 사용하여 상속 및 다형성을 구현할 수 있습니다. 이 글에서는 Kotlin에서 추상 클래스를 상속받아 객체를 생성하는 방법에 대해 알아보겠습니다.

추상 클래스(Abstract Class)란?

추상 클래스는 abstract 키워드로 정의되며, 일부 메서드의 구현을 하위 클래스에게 위임하는 역할을 합니다.

abstract class Shape {
    abstract fun calculateArea(): Double
}

위 예제에서는 Shape 추상 클래스를 정의하였고, 이 클래스는 calculateArea 메서드를 하위 클래스에서 구현하도록 요구합니다.

추상 클래스를 상속받아 객체 생성하기

class Circle(val radius: Double) : Shape() {
    override fun calculateArea(): Double {
        return Math.PI * radius * radius
    }
}

위 예제에서는 Shape 추상 클래스를 상속받는 Circle 클래스를 정의하였습니다. Circle 클래스는 calculateArea 메서드를 구현하여 원의 넓이를 계산하고 있습니다.

이제 Circle 클래스의 객체를 생성할 수 있습니다.

fun main() {
    val circle = Circle(5.0)
    val area = circle.calculateArea()
    println("원의 넓이: $area")
}

결론

Kotlin에서 추상 클래스를 상속받아 객체를 생성하는 방법에 대해 알아보았습니다. 추상 클래스를 사용하면 공통된 특징을 가진 객체들을 논리적으로 그룹화하고, 코드의 재사용성을 높일 수 있습니다.

더 자세한 내용은 Kotlin 공식 문서를 참고하세요.