[kotlin] 클래스와 객체의 개념과 사용법

Kotlin은 객체 지향 프로그래밍 언어로, 클래스와 객체 개념을 지원합니다. 여기에서는 Kotlin에서 클래스와 객체를 어떻게 정의하고 사용하는지에 대해 알아보겠습니다.

클래스 정의하기

Kotlin에서 클래스를 정의하는 방법은 다음과 같습니다:

class MyClass {
    // 클래스 멤버 변수
    var property1: Int = 0
    var property2: String = "Hello"

    // 클래스 멤버 함수
    fun myFunction() {
        // 함수 내용
    }
}

위의 예제에서 MyClass는 클래스를 정의하는 것이며, property1, property2, myFunction은 해당 클래스의 멤버 변수와 멤버 함수를 정의한 것입니다.

객체 생성하기

클래스를 사용하기 위해서는 객체를 생성해야 합니다. Kotlin에서 객체를 생성하는 방법은 다음과 같습니다:

val obj = MyClass()

위의 예제에서 MyClass의 객체를 생성하고, obj라는 변수에 할당한 것입니다. 이제 obj를 사용하여 클래스의 멤버 변수와 멤버 함수에 접근할 수 있습니다.

객체 초기화

Kotlin에서 객체를 생성할 때, 생성자를 통해 객체를 초기화할 수 있습니다. 예를 들어:

class Person(val name: String, var age: Int) {
    // 클래스 내용
}

위의 예제에서 Person 클래스는 nameage를 매개변수로 받는 생성자를 가지고 있습니다. 이를 통해 객체를 생성하면서 초기값을 지정할 수 있습니다:

val person = Person("John", 25)

클래스 상속

Kotlin은 클래스 상속을 지원하며, 다음과 같이 부모 클래스를 상속받는 자식 클래스를 정의할 수 있습니다:

open class Animal(val name: String) {
    // 클래스 내용
}

class Dog(name: String, var breed: String) : Animal(name) {
    // 클래스 내용
}

위의 예제에서 Dog 클래스는 Animal 클래스를 상속받아 name을 초기화하는 것을 볼 수 있습니다.

이처럼, Kotlin에서 클래스와 객체를 정의하고 사용하는 방법을 간단하게 알아보았습니다. 객체 지향 프로그래밍의 중요한 개념 중 하나인 클래스와 객체를 적절히 활용하여 안정적이고 확장 가능한 소프트웨어를 개발할 수 있습니다.

더 많은 내용은 Kotlin 공식 문서를 참고할 수 있습니다.