单例模式,装饰者模式,工厂模式,大白话解释

2分钟看懂 单例模式,装饰者模式,工厂模式

单例模式:

用我的话说,就是一次只能创建一个这个类,打个比方,比如你new 一个String 对象 ,你可以写 String a = “1”, String b = “2”,String c = “3”. … 理论上你可以一直这样new下去,单例模式就不同了 , 一般单例模式都会有一个获取对象的方法,首先 单例模式你不能new 如果你想获得一个单例的对象 你只能通过他内部提供的方法获取,但只能获取一个,这样的话在你的内存中就只有一个实例,减少了内存的开销,避免了对资源的多重占用

这里就给大家一个饿汉式的demo

public class danli {

	/*
	 *	饿汉式 
	 */
	
	private static danli danli = new danli();
	
	private void danli(){};
	
	public danli getDanli(){
		return danli;
	}	
	
}

装饰者模式:

用我的话说,见名知意,你可以把装饰者想象成一个装备,就跟你打LOL一样,你的类就是你的英雄,加了装饰类你的方法会变得更强,换句话说 如果你想让你的方法变得更强,但是你有不想改变你的这个方法(有些时候不太方便直接改方法),给你的方法,加件装备吧。

工厂模式:

两个武林高手,张三专用剑,李四专用刀,工厂模式呢,就像是一个小叮当,把剑和刀都装进口袋,他们都可以带着小叮当行走江湖,遇到需要用剑解决的敌人,小叮当拿出剑来对敌,遇到需要用刀解决的敌人,小叮当拿出刀来对敌。说到这里聪明的朋友想必已经明白,小叮当就相当于一个接口,用剑的张三和用刀的李四都是实现了小叮当接口的实现类,当某些特殊情况,例如你不知道请求的接口是需要用刀还是用剑的来解决的时候,你就可以直接用小叮当来处理请求,这样就成了一个简单的工厂模式

你可能感兴趣的:(java,设计模式)