程序设计模式

程序设计模式

程序设计模式今天主要讲三种模式,分别为

单例模式,工厂模式,代理模式

1.单例模式

含义:
一个类对应一个对象。
分类:

懒汉模式
   当第一次被调用的时候类才被创建。
饿汉模式
    在类被第一次加载的时候,对象就被创建了。

懒汉设计模式主要的步骤为:
1.构造器被私有//不能new了
2.私有的,静态的引用
3.提供公共的,静态的访问方式

public class LanHan{
	private LanHan(){
	}
	private static LanHan lh=null;
	public static LanHan lanHan2(){
		if(lh==null){
			return lh = new LanHan();
		}else{
			return lh;
		}
	}
}

饿汉设计模式主要的步骤为:
1.构造器被私有//不能new了
2.私有的,静态的对象
3.提供公共的,静态的访问方式

 public class ErHan{
	private ErHan(){
	}
	private static ErHan re=new ErHan();
	public static ErHan ErHan2(){
		return re;
	}
}

2.工厂模式

含义:
有些东西不必须本类自己去完成,可以使用工厂类来实现。例如:我买衣服,不必需非要我自己去制造衣服,只需要通过工厂类来进行完成。
使用:
定义工厂类和工厂方法即可。
例如,我要买一件游泳衣服。

public class Factory{
YiFu yf = null;
public YiFu factory(String name){
	if("泳衣".eauals(name)){
		yf = new YongYi();
	}else if("礼服".equals(name)){
			yf = new  LiFu();
	}	
}
}
interface YiFu{//衣服接口
public abstract void chuan();
}
/*
两种衣服泳衣和礼服
*/
class YongYi implements YifU{
	public void chuan(){
	System.out.println("我穿游泳衣");
	};
}
class LiFu implements YifU{
	public void chuan(){
	System.out.println("我穿礼服");
	};
}

3.代理模式

含义:
真实的目的需要代理人来一起实现。
代理实现的主要方法
1.代理人和真实需要共同继承同一个类或者接口
2.代理需要真实的引用也就是成员属性类进行维护
3.代理人实现功能

public class Test2{
	Manager manager = new Manager();
	Hr hr = new Hr(manager);
	hr.add();
}
public interface Add{
	public abstract void addUser();
}
class Manager implements Add{
   public void addUser(){
	System.out.println("我同意啦");
   };
}
class Hr implements Add{
	Manager mananger;
	public Hr(Manager manager){
		this.manager = manager;
	}
	public void  addUser(Manager manager){
	System.out.println("通知面试");
	maanger.addUser();
	System.out.println("谈薪资");
	}
}

你可能感兴趣的:(技术栈)