์ธํฐํ์ด์ค
์ธํฐํ์ด์ค๋ ์ถ์ ํด๋์ค์ ๋น์ทํ์ง๋ง ๋จ์ผ ์์๋ง ๋๋ ํด๋์ค์๋ ๋ค๋ฅด๊ฒ ๋ค์ค ๊ตฌํ์ด ๊ฐ๋ฅํ๋ค.
์ธํฐํ์ด์ค์ ์ ์ธ
interface Runnable {
fun run()
fun fastRun() = println("๋นจ๋ฆฌ ๋ฌ๋ฆฐ๋ค")
}
#์ถ์๋ฉ์๋๋ abstract ํค์๋๊ฐ ํ์ํ๋ฐ ์ธํฐํ์ด์ค์์๋ ์๋ต ๊ฐ๋ฅํ๋ค.
์ธํฐํ์ด์ค๋ ๊ตฌํ์ด ์๋ ๋ฉ์๋๋ฟ๋ง ์๋๋ผ ๊ตฌํ๋ ๋ฉ์๋๋ ํฌํจ ๊ฐ๋ฅํ๋ค.
์ธํฐํ์ด์ค์ ๊ตฌํ
class Human : Runnable {
override fun run(){
println("๋ฌ๋ฆฐ๋ค")
}
}
#์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ ๋๋ ์ธํฐํ์ด์ค ์ด๋ฆ์ : ๋ค์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฏธ๊ตฌํ ๋ฉ์๋๋ฅผ ์์ฑํ๋ค. ์ด๋ override ํค์๋๋ฅผ ๋ฉ์๋ ์์ ์ถ๊ฐํ๋ค.
์์๊ณผ ์ธํฐํ์ด์ค๋ฅผ ํจ๊ป ๊ตฌํ
open class Animal {
}
interface Runnable {
fun run()
fun fastRun() = println("๋นจ๋ฆฌ ๋ฌ๋ฆฐ๋ค.")
}
interface Eatable {
fun eat()
}
class Dog : Animal(), Runnable, Eatable {
override fun eat(){
println("๋จน๋๋ค.")
}
override fun run(){
println("๋ฌ๋ฆฐ๋ค.")
}
}
val dog = Dog()
dog.run()
dog.eat()
#์ธํฐํ์ด์ค๋ ์ฝค๋ง๋ก ๊ตฌ๋ถํ์ฌ ์ฌ๋ฌ ์ธํฐํ์ด์ค ๋์์ ๊ตฌํ ๊ฐ๋ฅํ๋ค.
'๊ฐ๋ฐ ํ์์บก์ > Kotlin' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kotlin] ๋ฆฌ์คํธ / ๋งต / ์งํฉ (0) | 2020.08.29 |
---|---|
[Kotlin] null ์ฒ๋ฆฌ (0) | 2020.08.27 |
[Kotlin] ํด๋์ค (0) | 2020.08.27 |
[Kotlin] ์ ์ด๋ฌธ(if, when, for, while) (0) | 2020.08.25 |
[Kotlin] ๊ธฐ๋ณธ ์๋ฃํ๊ณผ ๋ฐฐ์ด (0) | 2020.08.25 |