![]() | Kotlinスタートブック -新しいAndroidプログラミング 新品価格 |

Kotlinの勉強してるマスタカです
今回はジェネリクスについて
Masterka1は普通のジェネリクス
Masterka2はNumber型のジェネリクス
Masterka3は複数のインターフェースで制限した
out TはTのサブクラス。指定しないとワーニングを吐く
class Masterka<out T>(private val value:T) {
fun say() {
println(value)
}
}
class Masterka2<out T:Number>(private val value:T) {
fun say() {
println(value)
}
}
interface A
interface B
class Masterka3where T : A, T : B
fun main(args:Array<String>) {
val intMasterka:Masterka<Int> = Masterka(1)
intMasterka.say()
val doubleMasterka:Masterka<Double> = Masterka(1.2)
doubleMasterka.say()
val intMasterka2:Masterka2<Int> = Masterka2(1)
intMasterka2.say()
}
これでうまくジェネリクスが使えましたとさ
まだまだ続くよ
タグ:Kotlin