반응형

인터페이스(interface)

  • 메소드를 미리 선언한 해놓고 상속해서 사용하는 클래스에서 해당 메소드를 구현한다.

 

인터페이스 기본 사용법

//인터페이스 선언
interface Run {
    //상속받은 클래스에서 구현해야 하는 선언만 있는 메소드
    fun run()
    
    //코틀린에서는 구현된 메소드 포함 가능
    fun fastRun() = println("빨리달리기")
}
class Tiger : Run{
    override fun run() {
        println("달리기")
    }
}

 

상속 + 인터페이스

//상속할 클래스와 인터페이스 선언
open class Animal
interface Run {
    fun run()
    fun fastRun() = println("빨리달리기")
}
interface Eat {
    fun eat()
}

//상속받을 클래스 선언
class Dog : Animal(), Run, Eat {
    override fun run() {
        println("달리기")
    }
 
    override fun eat() {
        println("먹기")
    }
}

//사용
val dog = Dog()
dog.run()
dog.eat()
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기