import java.sql.DriverManager.println
abstract class Starcraft{
abstract fun attack(){}
}
class Protoss : Starcraft{
override fun attack(){
println("프로토스의 공격")
}
}
class Zerg : Starcraft{
override fun attack(){
println("저그의 공격")
}
}
fun main(args:Array<String>){
var star : Starcraft = Protoss()
star.attack()
star = Zerg()
star.attack()
//star = Star()//abstract 이기 때문에 안된다
//추상 클래스는 인스턴스 생성을 할 수 없다
//추상 메소드는 반드시 하위 클래스에서 오버라이딩 해야 한다.
}
'kotlin' 카테고리의 다른 글
코틀린 : 인터페이스와 추상화 코딩해보기! (0) | 2020.10.19 |
---|---|
코틀린 : 추상화 개념 다잡기 (0) | 2020.10.19 |
코틀린 : 참조형에서의 형 변환 (0) | 2020.10.15 |
코틀린 : 상속 (0) | 2020.10.15 |
코틀린 : 메소드 (0) | 2020.10.15 |