이글은 Kotlin 문법 정리글입니다.
이전에 상속에 대해서 알아봤습니다. 상속은 부모클래스의 어떤 기능을 자식클래스가 그대로 이어 받아서 사용하는 기법이에요. Interface는 상속과 사용법은 비슷하면서도 다릅니다.
Interface는 선언된 메소드를 모두 선언해야 합니다. 일종의 class를 생성하는 규칙을 정해주는 것이죠.
이제, 예를 보겠습니다. 학생과 선생님이 있는 경우에 학생과 선생님 모두 자기소개를 할 수 있겠죠?
fun main() {
}
interface CanIntroduce {
fun introduce()
}
class Student : CanIntroduce {
override fun introduce() { }
}
class Teacher : CanIntroduce {
override fun introduce() { }
}
Interface에서 구현하도록 지정한 메소드는 적용하는 class에서 반드시 해당 메소드를 전부 만들어주어야 합니다. 그렇지 않으면 에러가 발생합니다.