更新时间:2020-05-28 15:14:34 来源:极悦 浏览3200次
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的代码设计经验的总结,它与具体的语言无关,是一种思想,掌握了面向对象的思想,才可以更好的理解设计模式,而反之亦然。
在java中总共有23种设计模式,这些设计模式分别分为如下几种类型:
其中,创建型模式有6种,分别为简单工厂模式(Simple Factory)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、创建者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)
结构型模式有7种,分别为外观模式/门面模式(Facade门面模式)、适配器模式(Adapter)、代理模式(Proxy)、装饰模式(Decorator)、桥梁模式/桥接模式(Bridge)、组合模式(Composite)、享元模式(Flyweight)
行为型模式有10种,分别为模板方法模式(Template Method)、观察者模式(Observer)、状态模式(State)、策略模式(Strategy)、职责链模式(Chain of Responsibility)、命令模式(Command)、访问者模式(Visitor)、调停者模式(Mediator)、备忘录模式(Memento)、迭代器模式(Iterator)、解释器模式(Interpreter)
创建模式
生活案例:国家施行的计划生育政策,规定一对夫妇只生一胎,刚结婚时,确定生一胎,生完后无论如何不能再生,否则违背国家政策。
程序概念:所谓单例设计模式简单说就是无论程序如何运行,采用单例设计模式的类(Singleton类)永远只会有一个实例化对象产生。具体实现步骤如下:
1)构造方法私有化(采用private修饰)。
2)使用静态方法调用得到单例模式对象。
代码如下所示:
class Singleton {
private static Singleton instance = new Singleton();// 饿汉式
public static Singleton getInstance() {
return instance;
}
private Singleton() { // 构造方法封装为私有化
}
}
public class Test2 {
public static void main(String args[]) {
Singleton s = Singleton.getInstance(); //两个对象一致
Singleton s = Singleton.getInstance();
}
}
生活案例:一个卖肉工厂可以生产猪肉、狗肉、羊肉、牛肉等,工厂很清楚有哪些的产品,所以我们只需要工厂提供即可
程序概念:简单工厂又叫静态工厂,由一个工厂对象决定创建哪一个产品对象
代码案例如下:
public class Factory{
public static int PIG_TYPE = 1;
public static int DOG_TYPE = 2;
public static Animal getAnimal(int flag) {
if(flag==PIG_TYPE){
return new Pig(); //获取猪肉对象
}else if(flag==DOG_TYPE){
return new Dog(); //获取狗肉对象
}
return null;
}
}
public class Test2 {
public static void main(String args[]) {
//获得狗肉对象
Animal a = Factory.getAnimal(Factory.DOG_TYPE);
}
}
以上就是极悦java培训机构的小编针对“Java常用设计模式介绍,超级详细”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习