首页 > 代码库 > 设计模式

设计模式

 抽象工厂模式factory:

public interface Send {	public void send();}
public class SmsSendImpl implements Send {	@Override	public void send() {		// TODO Auto-generated method stub		System.out.println("sms send");	}}
public class MailSendImpl implements Send {	@Override	public void send() {		// TODO Auto-generated method stub		System.out.println("mail send");	}}
public class FactoryCreate {	public Send produce(String type){		if("mail".equals(type)){			return new MailSendImpl();		}else if("sms".equals(type)){			return new SmsSendImpl();		}else{			return null;		}	}}
public static void main(String[] args) {		// TODO Auto-generated method stub		FactoryCreate   fc = new FactoryCreate();		Send send = fc.produce("sms");		send.send();	}  

单例模式Singleton

public class SingleTon {	private static SingleTon  singleton = null ;	public static SingleTon getInstance(){		if(singleton == null){			singleton = new SingleTon();		}		return singleton;	}}
public static void main(String[] args) {		// TODO Auto-generated method stub		SingleTon s = SingleTon.getInstance();		System.out.println("--"+s);	}

原型模式prototype:

public abstract class AbstractSpoon implements Cloneable {	private String name;	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	@Override	protected Object clone() throws CloneNotSupportedException {		// TODO Auto-generated method stub		return super.clone();	}	}
public class SoupSpoon extends AbstractSpoon {	public SoupSpoon() {		super();		// TODO Auto-generated constructor stub		this.setName("aaa");	}}
	public static void main(String[] args) {		// TODO Auto-generated method stub		AbstractSpoon ss = new SoupSpoon();		String name = ss.getName();		System.out.println("--"+name);	}

  

 

  

 

 

设计模式