31. 封装

1.先定义一个WashMachine类如下:

class WashMachine(var brand: String, var l: Int) {

    /**
     * 给用户设置模式
     */
    var mode: Int = 0//1:轻柔 2:狂揉

    /**
     * 开门动作
     */
    fun openDoor() {
        println("打开洗衣机门")
    }

    /**
     * 关门
     */
    fun closeDoor() {
        println("关闭关门")
    }

    /**
     * 开始洗衣服
     */
    fun start() {
        when (mode) {
            0 -> println("请选择模式")
            1 -> {
                println("开始放水")
                println("水放满了")
                println("开始洗衣服")
                println("模式设置为轻柔")
                setMotorSpeed(1000)
                println("衣服洗好了")
            }
            2 -> {
                println("开始放水")
                println("水放满了")
                println("开始洗衣服")
                println("模式为狂揉")
                setMotorSpeed(10000)
                println("衣服洗好了")
            }
            else -> println("模式设置错误")
        }

    }

    /**
     * 设置发动机转速
     */
    private fun setMotorSpeed(speed: Int) {
        println("当前转速$speed 转/s")
    }
}

2.用户类

fun main(args: Array) {
    val machine = WashMachine("海尔", 12)
    machine.openDoor()
    println("放入衣服")
    machine.closeDoor()
    machine.mode = 2
    machine.start()
}

你可能感兴趣的:(31. 封装)