kotlinでメソッドの挙動を変更したい時、overrideで設定することで変更できる。
そのクラスにだけ適用したい場合(基本)
方法:toString() を override する
class User(val name: String) {
override fun toString(): String {
return "$name Ace"
}
}
val user = User("Tom")
println(user.toString()) // Tom Ace
プロジェクト全体で統一したい場合
上記の適応範囲はこのクラスのみだが、プロジェクト全体に適応する場合は共通クラスを作成して使いまわせるようにする。
open class BaseModel {
protected open fun baseToString(): String {
return super.toString() + " Ace"
}
override fun toString(): String = baseToString()
}
class User(val name: String) : BaseModel() {
override fun baseToString(): String {
return "$name Ace"
}
}