java的设计模式

1、单例模式

恶汉式:

private static Singleton singleton=new Singleton();
private Singleton(){}
public static Singleton getSingleton(){
return singleton;
}

懒汉式:

private static Singleton singleton;
private Singleton(){}
public static synchronized Singleton getSingleton(){
if(singleton==null){
singleton=new Singleton();
}
return singleton;
}


单例模式的改进版:怎样控制一个类平常保持三个对象,最多不能超过10个对象。就像数据库连接池一样。

2、代理模式

class Factory{
public void sell(){
System.out.println("factory的产品销售。");
}
}

class Proxy{
private Factory factory=new Factory();
public void sell(){
factory.sell();
System.out.println("proxy及代理的销售");
}
}

3、工厂模式

Interface Car{

public void drive();

}

class BMW implements Car{

public void drive(){}

}

class AODI implemnts Car{

public void drive(){}

}

public class Factory{

public static getCarInstance( string type){


Car car =null;

car = class.forName("包名"+type).newInstance();

}

}

工厂设计模式的优点在于:

1、将对象的创建过程封装,体现了j面向对象的封装特性。

2、有利于同类型对象的管理与创建。

3、使用对象更方便,使用者只要关心对象的使用而不要关心对象的创建。而且开发新的类只要实现原油接口就能被直接调用,而不要更改代码。


4、原型模式

使用原型模式复制一个对象比调用new创建一个对象在性能上要好的多,原型模式要求实现cloneAble方法重写clone()方法实现继承。因为这个是直接的在内存中的二进制流。

class A implements cloneAble{

public A clone(){

//实现克隆方法

}

}

5、创建者模式;

实现了复杂对象的生产线于其部件的隔离。创建者模式与工厂模式的区别在于:

Factory模式不考虑对象的组装过程,而直接生成一个我想要的对象。
Builder模式先一个个的创建对象的每一个部件,再统一组装成一个对象。
Factory模式所解决的问题是,工厂生产产品。而Builder模式所解决的问题是工厂控制产品生成器组装各个部件的过程,然后从产品生成器中得到产品。

class Car{

private Car car;

public coid concreate(){

car.buildPartA();

car.builePartB();

}

}

6适配器模式adapter

组合与继承(设计模式的六大原则中提到优先使用组合而不是继承)

7、组合模式

好处:

1、使客户端调用简单,客户端不用担心是调用组件还是调用对象

2、更容易在组合体中加入部件,客户端不会因为新加入部件而要修改代码。

8、装设模式

9、反射模式

10、bridge设计模式

11、享元模式(在文字处理类软件中使用)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值