跟我一起学“仓颉”设计模式-策略模式练习题
本章为大家详细的介绍了仓颉设计模式中策略模式练习题的内容。
·
目录
一、练习题
1. 某系统需要对数据加密,提供了多种加密方法,用户可以动态的选择加密方法,请用策略模式模拟实现。
类图

核心代码
package DesignPattern.strategy
// 环境类
public class Data {
public Data(private let data: String, private let encrypt: Encrypt) {}
public func show() {
println("加密数据: ${encrypt.encrypt(data)}")
}
}
// 抽象策略类
public interface Encrypt {
func encrypt(data: String): String
}
// 具体策略类
public class MD5 <: Encrypt {
public override func encrypt(data: String) {
return "${data}是MD5加密"
}
}
public class SHA256 <: Encrypt {
public override func encrypt(data: String) {
return "${data}是SHA256加密"
}
}
测试代码
package DesignPattern
import DesignPattern.strategy.*
main(): Int64 {
let data1 = Data("123456", MD5())
data1.show()
let data2 = Data("123456", SHA256())
data2.show()
return 0
}
二、小结
本章为大家详细的介绍了仓颉设计模式中策略模式练习题的内容,下一章,为大家带来最后一个设计模式访问者模式的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉设计模式有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!
更多推荐



所有评论(0)