Computer/Kotlin

[15일차 Kotlin] 인터페이스(Interface)

Wise-99 2023. 5. 17. 21:18

 

 

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT

 

 

 

📖 인터페이스(Interface)란?

  • Kotlin은 다중 상속을 지원하지 않기 때문에 자기 타입의 변수나 부모형 타입 변수에만 담을 수 있다.
  • 만약 생성된 객체의 주소 값을 다양한 타입의 변수에 담을 수 있도록 한다면 인터페이스를 활용하면 된다.
  • 인터페이스는 클래스가 아니므로 객체를 생성할 때 사용할 수 없다.
  • , 클래스는 한 개 이상의 인터페이스를 구현할 수 있으며 생성된 객체는 구현한 인터페이스형 참조 변수에 담을 수 있다.
  • 인터페이스에는 추상 메서드와 일반 메서드 모두를 구현해서 사용할 수 있다.
  • 인터페이스는 추상 클래스와 목적이 비슷하지만 하나의 클래스에 여러 인터페이스를 구현할 수 있는 장점을 가지고 있다.

 

📖 예제 코드

interface Inter1{
    fun interfaceMethod1()
}

interface Inter2{
    fun interfaceMethod2()
}

interface Inter3{
    fun interfaceMethod3()
}

// 인터페이스를 정의한 클래스
class TestClass4 : Inter1, Inter2, Inter3{
    override fun interfaceMethod1() {
        println("TestClass4의 interfaceMethod1")
    }

    override fun interfaceMethod2() {
        println("TestClass4의 interfaceMethod2")
    }

    override fun interfaceMethod3() {
        println("TestClass4의 interfaceMethod3")
    }
}