Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,28 @@
interface Camera {
val numberOfLenses : Int
}
interface MobilePhone {
fun charge(n : Int) {
if (n >= 0)
battery_level = (battery_level + n).coerceAtMost(100)
}
var battery_level : Int
}
data class CameraPhone(override val numberOfLenses : Int = 1, override var battery_level: Int) : Camera, MobilePhone
data class TwinLensCamera(override val numberOfLenses : Int = 2) : Camera
fun main(args: Array<String>) {
val c = CameraPhone(1, 50)
println(c)
c.charge(35)
println(c)
c.charge(78)
println(c)
println(listOf(c.javaClass.superclass) + c.javaClass.interfaces)
val c2 = TwinLensCamera()
println(c2)
println(listOf(c2.javaClass.superclass) + c2.javaClass.interfaces)
}