반응형
인터페이스
추상 메서드를 포함할 수 있으며 abstract 키워드를 생략할 수 있다.
- 선언
interface Runnable{
fun func()
}
// 이미 구현된 메소드를 포함할 수 있다.
interface Runnable{
fun run()
fun ruuuuuuuuun() = println("가즈아ㅏㅏㅏ");
}
- 구현
- override 키워드를 메소드 앞에 추가한다.
class Person : Runnable {
override run(){
println("나는 달리고 있습니드아ㅏㅏㅏㅏ");
}
}
- 상속과 인터페이스
상속과 인터페이스를 함께 구현할 수 있다.
상속은 한번에 하나밖에 안되지만 인터페이스는 콤마(,)를 이용해 동시에 구현이 가능하다.
open class Person{ // 상속 가능한 클래스 생성
}
interface Student{ // 인터페이스 생성
fun practice()
fun study() = println("공부중")
}
interface Runnable{
fun run()
}
class Human : Person(), Student, Rannable { // 상속, 복수의 인터페이스 구현
override fun run(){
println("달리는중")
}
orverride fun practice(){
println("뭔가를 하는 중")
}
}
val student = Human() // 클래스 생성
student.run() // 인터페이스 함수 실행
student.practice()
반응형
'Develop > Android' 카테고리의 다른 글
Kotlin ) 코틀린 기초 Part#6 - 컬렉션 (0) | 2019.06.13 |
---|---|
Kotlin ) 코틀린 기초 Part#5 - null? null! (0) | 2019.06.12 |
Kotlin ) 코틀린 기초 Part#3 - 클래스 ( CLASS ) (0) | 2019.06.12 |
Kotlin ) 코틀린 기초 Part#2 - 배열 ( Array ), 제어문 ( if, for, when ) (0) | 2019.06.12 |
Kotlin ) 코틀린 기초 Part#1 - 변수, 상수, 자료형 (0) | 2019.06.11 |