[kotlin] 코틀린(Kotlin) 클래스와 객체

목차

  1. 소개
  2. 클래스 정의
  3. 객체(인스턴스) 생성
  4. 클래스 멤버
  5. 확장 함수와 프로퍼티
  6. 참조

소개

코틀린은 객체지향 프로그래밍 언어이며, 클래스와 객체 지향 프로그래밍의 기본 개념을 지원합니다. 클래스는 데이터와 동작을 묶어서 정의하는 것이며, 객체는 클래스의 인스턴스입니다.

클래스 정의

코틀린에서 클래스는 class 키워드로 정의됩니다. 아래는 간단한 예제입니다.

class Car(val brand: String, val model: String) {
    fun start() {
        println("The $brand $model is starting")
    }
}

Car 클래스는 brandmodel 속성을 가지며, start 메서드를 정의합니다.

객체(인스턴스) 생성

클래스의 객체(인스턴스)는 클래스명()으로 생성됩니다. 아래는 객체 생성의 예제입니다.

val myCar = Car("Toyota", "Corolla")
myCar.start()

이렇게 하면 myCar 객체가 생성되고, start 메서드가 호출됩니다.

클래스 멤버

클래스는 속성과 메서드로 이루어집니다. 클래스 내부에서는 속성과 메서드에 접근할 때 this 키워드를 생략할 수 있습니다.

class Person(val name: String) {
    fun greet() {
        println("Hello, my name is $name")
    }
}

위의 예제에서 this를 사용하지 않고 속성 name에 접근하고 있습니다.

확장 함수와 프로퍼티

코틀린은 기존 클래스에 새로운 함수나 프로퍼티를 추가할 수 있는 확장 기능을 제공합니다.

fun Car.stop() {
    println("The $brand $model is stopping")
}

위의 예제는 Car 클래스에 stop 메서드를 확장하여 추가하는 예시입니다.

참조

위의 참고 자료들은 코틀린 클래스와 객체에 대한 더 자세한 내용을 제공하고 있습니다.