Java设计模式技巧?
发布网友
发布时间:2022-05-12 05:25
我来回答
共5个回答
热心网友
时间:2023-11-20 13:41
1、工厂模式,目标是将创建对象的工作独立出来做,这样做的好处是将对象创建工作集中管理,更易于扩展。如“简单工厂模式”,将创建对象的工作交给一个专门的工厂类来做 ;工厂方法模式,则将创建对象的工作交给一个专门的工厂方法。
2、适配器模式,是实现将一个类的接口,转换成用户期望的另一个接口,它让两个原来无继承关系、不兼容的类可以相互合作。
3、代理模式,是为一个对象提供一个替身,以控制对该对象的访问。比如一些对象的访问,需要设置安全权限,则可以使用该模式,另外当一个对象的创建消耗的资源较大,为了使其他程序能够不至于空等,可以设计一个代理,先返回必要的信息给交互的对象,把对象的创建交由代理对象来执行。
热心网友
时间:2023-11-20 13:42
工厂设计:
定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。
适用性
1.当一个类不知道它所必须创建的对象的类的时候。
2.当一个类希望由它的子类来指定它所创建的对象的时候。
3.当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。
适配器设计:
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
适用性
1.你想使用一个已经存在的类,而它的接口不符合你的需求。
2.你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口
可能不一定兼容的类)协同工作。
3.(仅适用于对象Adapter)你想使用一些已经存在的子类,但是不可能对每一个都进行
子类化以匹配它们的接口。对象适配器可以适配它的父类接口。
代理设计:
为其他对象提供一种代理以控制对这个对象的访问。
适用性
1.远程代理(RemoteProxy)为一个对象在不同的地址空间提供局部代表。
2.虚代理(VirtualProxy)根据需要创建开销很大的对象。
3.保护代理(ProtectionProxy)控制对原始对象的访问。
4.智能指引(SmartReference)取代了简单的指针,它在访问对象时执行一些附加操作。
热心网友
时间:2023-11-20 13:42
这玩意说的多往往是不怎么做的,做得多往往都是说不出来的。
多写,多看自己就能体会了,反正不要强行套设计模式,否则那样的代码让人看起来就不爽。
不管任何模式,到最后无非就是接口 抽象类 实体类,还有工具类这几种,这几种会让代码出现结构化,任何模式都是在这三者之间,最怕的就是生搬硬套的走模式。
其实java提供的源码就是很值得一看,特别是swing这一块,看明白了绝对是豁然开朗,只要能把把类的三次,接口,抽象,实体,另外工具类,这几种弄熟悉,灵活使用,就基本上没啥问题了。在复杂的模式都是这几个玩意的组合实现。
热心网友
时间:2023-11-20 13:43
我理解:设计模式是面向对象中,处理类之间的相互关系,目标是实现高内聚,低耦合。
1我使用面向对象,熟练使用类和对象,(这不是必须的,用面向过程一样可以,各有优点)
2我有很多很复杂的类和关系,(简单的工作并不需要用模式)
3明白不用模式会怎样,用了模式后会怎样。(好的结构不是一次写成的,需要不断重构)
。。。。希望对你有帮助
热心网友
时间:2023-11-20 13:43
<<软件秘籍-设计模式那点事>> 电子出版的,刚出来,里面有各个设计模式详细的讲解,还有生活例子、模式要点以及使用场合,比较通俗易懂!上网搜搜吧,应该对你有帮助!