[kotlin] 코틀린 인터페이스의 구현 방법

코틀린에서 인터페이스는 다른 클래스에 대한 추상 메서드를 정의하는데 사용됩니다. 이러한 인터페이스를 구현하여 클래스에서 실제 동작을 정의할 수 있습니다. 이번 블로그 포스트에서는 코틀린 인터페이스를 어떻게 구현하는지 알아보겠습니다.

인터페이스 구성

인터페이스를 정의하기 위해 interface 키워드를 사용합니다. 인터페이스 안에는 추상 메서드, 프로퍼티, 기본 구현이 포함될 수 있습니다.

interface MyInterface {
    fun myMethod()
    val myProperty: String
    get() = "Default Property Value"
    
    fun myDefaultMethod() {
        println("This is a default method")
    }
}

위의 예시에서 MyInterfacemyMethodmyProperty라는 추상 메서드와 프로퍼티를 가지고 있습니다. 또한 myDefaultMethod라는 기본 구현이 포함되어 있습니다.

인터페이스 구현

인터페이스를 구현하는 클래스는 : 인터페이스명을 사용하여 구현할 수 있습니다. 구현 클래스는 인터페이스의 모든 메서드를 구현해야 합니다.

class MyClass : MyInterface {
    override fun myMethod() {
        println("Implementing myMethod")
    }
    
    override val myProperty: String
        get() = "Overridden Property Value"
}

위의 예시에서 MyClassMyInterface를 구현하고 있습니다. 이 클래스는 myMethodmyProperty 메서드를 반드시 구현해야 합니다. 또한, 기본 구현인 myDefaultMethod는 구현 클래스에서 구현하지 않아도 됩니다.

인터페이스 사용

인터페이스를 사용하기 위해서는 인터페이스가 구현된 객체를 생성해야 합니다. 이 객체를 사용하여 인터페이스의 메서드와 프로퍼티에 접근할 수 있습니다.

fun main() {
    val myObj = MyClass()
    myObj.myMethod()
    println(myObj.myProperty)
    myObj.myDefaultMethod()
}

위의 예시에서 MyClass의 객체를 생성한 후에 myMethod를 호출하고, myProperty 값을 출력하며, myDefaultMethod를 호출하고 있습니다.

요약

이 블로그 포스트에서는 코틀린에서 인터페이스를 어떻게 구현하는지에 대해 알아보았습니다. 인터페이스를 구현하는 클래스를 작성하고, 인터페이스를 사용하는 방법을 확인했습니다. 인터페이스는 코틀린에서 다형성을 지원하는 강력한 도구로써 활용될 수 있습니다. 추가적으로 코틀린의 인터페이스 문서를 참고하는 것을 권장합니다.

참고 문서: 코틀린 인터페이스 문서