Coding/Kotlin
보조 생성자
코딩;
2022. 1. 26. 07:41
class Base(val id:String, val pwd:String, val age:Int){ // -> 기본생성자
constructor(id:String, pwd:String) : this(id, pwd, 22){ // -> 보조 생성자
println("constructor($id:String, $pwd:String, $age:Int)")
}
constructor(id:String) : this(id, "1004", 22){ // -> 보조 생성자
println("constructor($id:String, $pwd:String, $age:Int)")
}
override fun toString(): String {
return "Base(id='$id', pwd='$pwd', age=$age)"
}
}
중복된 생성자가 있을 수 없기 오버라이드 개념으로 보조 생성자를 쓰면 된다.
함수 호출부
fun main(args: Array<String>) {
val base1 = Base("abc", "123", 24)
println(base.toString())
val base2 = Base("bcd", "234")
println(base2.toString())
}
참고 - 자바의 보조 생성자(코틀린에서 사용 불가)
class Base{
String id
String pwd
Base(){
id = ""
pwd = ""
}
Base(String id, String pwd){
this()
this.id = id
this.pwd = pwd
}
}