设计模式
CD曾
在生命的道路上应该知道坚持什么
展开
-
设计模式-动态代理
文章目录前言一、接口Star二、创建真实对象类三、创建handler接口四、测试类编写以及运行结果前言主要是为了在满足静态代理的基础上,还可以更灵活,暂时在这里做一下笔记,理解的不是太深。这里利用jdk的代理来实现的,主要是InvocationHandler接口和Proxy类。提示:以下是具体实现,个中滋味可以自己体会一、接口Star明星接口public interface Star { /* 面谈 */ void confer(); /*原创 2021-09-09 20:39:44 · 143 阅读 · 0 评论 -
设计模式-静态代理
文章目录前言一、接口Star二、创建真实对象类三、创建代理类四、测试类编写以及运行结果前言主要是为了让代理来帮真实对象来实现通用的功能,而真实对象只需要实现自己独有的功能即可,场景:比如中介代理、明星的经纪人代理之类的。实现:通过构建接口,真实对象实现接口,代理对象也实现接口,但是代理对象里还需要有真实对象,在实现真实对象的特定功能时通过真实对象调用真实对象的方法实现即可。这里以明星和代理来做举例提示:以下是具体实现,个中滋味可以自己体会。一、接口Star明星接口public interfa原创 2021-09-09 20:09:01 · 62 阅读 · 0 评论 -
设计模式-构建者模式
文章目录前言一、角色类二、创建者类三、导演类编写以及运行结果前言实现对一个类的自定义构建,主要由创建者,角色以及导演组成。提示:以下是具体实现,个中滋味可以自己体会一、角色类学生类public class Student { private int id; private String name; private int age; private Father father; public int getId() { return id原创 2021-08-09 23:02:54 · 53 阅读 · 0 评论 -
设计模式-单例模式
文章目录前言一、饿汉式写法二、懒汉式写法一三、懒汉式写法二四、懒汉式写法三五、懒汉式写法四六、懒汉式写法五七、懒汉式写法六前言单例模式的目的是需不需要在全局范围内只创建该类的对象实例,主要分为懒汉式和饿汉式。提示:以下是具体实现,个中滋味可以自己体会一、饿汉式写法public class Student { //私有静态成员变量 private static Student student = new Student(); //私有构造类 private Stu原创 2021-08-09 22:19:26 · 59 阅读 · 0 评论 -
设计模式-原型模式
文章目录前言一、前期的准备类二、测试类编写以及运行结果前言原型模式我理解的就是给我一个对象,我复制一个对象供你使用,这里主要分为浅拷贝和深拷贝。浅拷贝是利用对象实现Cloneable接口,调用Object的clone()方法即可,效果是基本类型和String类型会被重新创建,其他的引用类型不会被重新创建;深拷贝是把对象实现Serializable接口,利用流进行反序列话即可。提示:以下是具体实现,个中滋味可以自己体会一、前期的准备类public class ProtoTypeDemo impl原创 2021-08-09 21:46:12 · 53 阅读 · 0 评论 -
设计模式-抽象工厂
文章目录前言一、前期的准备类二、测试类编写以及运行结果总结前言抽象设计模式的实现是把简单工厂和工厂方法给结合运用的,可以实现某个品牌的一系列产品。提示:以下是具体实现,个中滋味可以自己体会一、前期的准备类路由接口public interface LuYou { void show();}手机接口public interface Phone { void show();}华为品牌和小米品牌的手机以及路由的实现类public class HuaWeiLuYou i原创 2021-08-09 21:21:47 · 57 阅读 · 0 评论 -
设计模式-工厂方法
文章目录前言一、前期的准备类一、创建一个接口二、测试类编写以及运行结果总结前言工厂方法设计模式的实现:主要是创建一个接口或者抽象类来完成动物类的创建,随后用一个猫类或者狗类来实现这个接口或者继承这个类,这里演示的是接口。提示:以下是具体实现,个中滋味可以自己体会一、前期的准备类动物接口public interface Animal { void eat();}猫类实现动物接口public class Cat implements Animal { @Override原创 2021-08-09 20:47:54 · 103 阅读 · 0 评论 -
设计模式-简单工厂
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、前期的准备类?一、传参不同创建不同的类?二、使用步骤1.引入库2.读入数据总结前言简单工厂设计模式的两种实现:一种是根据方法中传入的参数不同来创建不同的类;另一种是一个方法创建一个类。提示:以下是具体实现,个中滋味可以自己体会一、前期的准备类?动物接口public interface Animal { void eat();}猫类实现动物接口public class Cat implement原创 2021-08-09 20:32:30 · 88 阅读 · 0 评论