具体的使用场合和实例,见原型模式 。
原型模式,在实际使用时可能用得不多 。用一句话描述其特点:
这种克隆是一种内存中的复制行为,速度快,能充分利用已有对象的缓存数据,性能高 。克隆出来的对象具有和原对象相同的属性和行为,可以用来帮助原对象处理一些事务 。用一句动漫中的词汇来描述,“影分身”再合适不过了 。
从设计模式的本质看,
下一篇,我们将介绍结构型模式 。
你熟悉的设计模式有哪些?写出单例模式的实现代码23个设计模式go语言抽象工厂设计:
根据目的设计模式可以分为创造模式,结构模式和行为模式,创建模式用于处理对象的创建 。结构模式用于处理类或对象的组合 。
行为模式用于描述类或对象如何交互以及如何分配职责,创建模式用于处理对象的创建 。主要包括以下五种设计模式:
?工厂方法模式()
?抽象工厂模式(AbstractFactoryPattern)
?建造者模式(BuilderPattern)
?原型模式(PrototypePattern)
?单例模式(SingletonPattern)
结构模式用于处理类或对象的组合,包括以下七个设计模式:
?适配器模式(AdapterPattern)
?桥接模式(BridgePattern)
?组合模式(CompositePattern)
?装饰者模式(DecoratorPattern)
?外观模式(FacadePattern)
?享元模式(FlyweightPattern)
?代理模式(ProxyPattern)
行为模式描述类或对象如何交互以及它们如何分配职责 。它由以下11种设计模式组成:
?责任链模式(Chain的ResponsibilityPattern)
?命令模式(CommandPattern)
?解释器模式(InterpreterPattern)
?迭代器模式(IteratorPattern)
?中介者模式(MediatorPattern)
?备忘录模式(MementoPattern)
?观察者模式(ObserverPattern)
?状态模式(StatePattern)
?策略模式(StrategyPattern)
?模板方法模式(TemplateMethodPattern)
?访问者模式(VisitorPattern)
单例模式实现1:
公共类Singleton{
类共享实例对象
私有静态单例go语言抽象工厂设计;单例=零;
//私有构造函数
私有Singleton(){
系统 。出去了 。这是单例go语言抽象工厂设计?。。?
}
//获取单例方法
公共同步静态单例getInstance(){
//确定共享对象是否为空,如何空一个新对象
If(singleton==null){
singleton=newsingleton();
}
返回单例 。
}
}
单例模式实现2:
公共类Singleton{
类共享实例对象实例化
PrivatestaticSingletonSingleton=newSingleton();
//私有构造函数
私有Singleton(){
系统:出去了,这是单例?。。?
}
//获取单例方法
公共静态单例getInstance(){
直接返回共享对象
返回单例 。
}
}
扩展资料:
注意事项:
设计模式主要分三个类型:创建型和行为型 。
Singleton:确保一个类只有一个实例,并为其提供一个全局访问点
AbstractFactory:提供一个接口,用于创建一系列相关或相互依赖的对象,而无需指定它们的具体类 。
FactoryMethod:定义一个用于创建对象的接口,并让子类决定实例化哪个类 。工厂方法将类的实例化延迟到子类 。
Builder:将复杂对象的构造与其表示分离,使相同的构造过程可以创建不同的表示 。
Prototype:指定要使用Prototype实例创建的对象的类型,并复制该原型来创建一个新对象 。
Composite:将对象组合成树状结构,以表示整体各部分之间的关系 。组合使用户一致地使用单个对象和组合对象 。
推荐阅读
- 电脑卫视直播回看,电脑怎么看各大卫视直播回放
- 单反直播需要电脑什么配置,单反连接电脑直播用什么线
- ios如何下载torrent文件,ios怎样下载torrent
- 打底直播介绍文案,打底直播介绍文案
- 包含Oraclenumber类型存储数据过长的词条
- html5的scrolling属性,html的cursor的属性
- erp绩效系统是什么,erp效率
- go语言代码覆盖率工具 go语言测试覆盖率
- chatgpt做ppt,免费一键生成ppt软件