Archives
Recent Posts
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Today
Total
관리 메뉴

안드로이드 개발자의 창고

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

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")
    }
}

'Computer > Kotlin' 카테고리의 다른 글

[16일차 Kotlin] Data Class  (0) 2023.05.18
[16일차 Kotlin] Companion  (0) 2023.05.18
[15일차 Kotlin] 추상화(abstract)  (0) 2023.05.17
[15일차 Kotlin] Any  (0) 2023.05.17
[14일차 Kotlin] Overriding(오버라이딩)  (0) 2023.05.17