版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengxu_kuangrexintu/article/details/82557992
前言
上一篇博客中,我有用学习到的Kotlin语言编写一个洗衣机Demo,那么这篇博客中我对它进行升级改造,提升博客中程序员B的用户体验感。
面向对象实战-洗衣机升级改造
我们需要为洗衣机增加一些新的功能,判断洗衣机门是否有关,洗衣机有什么模式。
实例代码
1.程序员A为洗衣机添加新的功能。
/**
* 程序员A创建的洗衣机
*/
class WashMachine(var module:String,var size:Int) {
/**定义一个变量用于判断洗衣机是否有关闭*/
var isDoorOpen = true
/**定义当前变量*/
var currentMode = 0
/**定义打开洗衣机门方法*/
fun openDoor(){
println("洗衣机的门已经打开了...")
isDoorOpen = true
}
/**定义一个关门的方法*/
fun closeDoor(){
println("洗衣机的门已经关闭了...")
isDoorOpen = false
}
/**设置洗衣机模式*/
fun selectMode(mode:Int){
currentMode = mode
when(mode){
0 -> println("初始模式,请您选择模式")
1 -> println("轻柔模式")
2 -> println("狂揉模式")
else -> println("请选择正确的模式")
}
}
/**定义一个开始洗衣服的方法*/
fun start(){
if (isDoorOpen) {
println("滴滴...请关好洗衣机门 ")
}else{
when(currentMode){
0 -> {
println("选择模式错误,不能开始洗衣服")
}
1 -> {
println("放水中...")
println("水放满了...")
println("轻柔模式开启")
println("开始洗衣服...")
println("衣服已经洗好了...")
}
2 -> {
println("放水中...")
println("水放满了...")
println("狂揉模式开启")
println("开始洗衣服...")
println("衣服已经洗好了...")
}
else -> {
println("选择模式错误,不能开始洗衣服")
}
}
}
}
}
2.程序员B使用洗衣机的新功能。
/**
* 程序员B写的代码
* 需求是:洗衣服
*/
fun main(args: Array<String>) {
var washMachine = WashMachine("小天鹅",12)
washMachine.openDoor()
println("程序员B把牛仔裤放进去了")
washMachine.closeDoor()
washMachine.selectMode(2)
washMachine.start()
}
总结
我通过上面的代码,实现一个很古老的洗衣机,现在我们平时用的洗衣机功能更多。在编写过程中,加深自己对Kotlin的面向对象的理解。