java 设计模式,
java 设计模式,
简单工工厂模式
什么是简单工厂模式?
答:简单工厂模式是由一个具体的类去创建其他类的实例,父类是相同的,父类是具体的。 又称静态工厂模式
例子:
产品1 和产品2 都有一个有用的,用静态工厂方式模式设计程序:、
Use类:
package net.mylearner.a3_12_pm;
interface Use {
abstract public void use();
}
Product1类:
package net.mylearner.a3_12_pm;
public class Product1 implements Use {
@Override
public void use() {
// TODO Auto-generated method stub
System.out.println("product1 use");
}
}
Product2类:
package net.mylearner.a3_12_pm;
public class Product2 implements Use {
@Override
public void use() {
System.out.println("product2 use");
}
}
ProductFactory类:
package net.mylearner.a3_12_pm;
import net.mylearner.a3_10_pm.Person;
public class ProductFactory {
public static Use getInstance(String product) {
Use use=null;
if ("Product1".equals(product))
use=new Product1();
if ("Product2".equals(product))
use=new Product2();
return use;
}
}
测试类:
package net.mylearner.a3_12_pm;
public class Test {
public static void main(String[] args) throws Exception {
ProductFactory productFactory = (ProductFactory) new ProductFactory();
Use product = productFactory.getInstance("Product1");
product.use();
Use product2 = productFactory.getInstance("Product2");
product2.use();
}
}
适配器设计模式
什么是适配器设计模式?
答:一个接口中定义了多个方法,但是根据应用的场景,只需要一个方法,其他的不需要也不想包含在类中,
定义一个类实现这个接口,把每个方法实现一个空方法,以后要用这个接口是,只需要继承这个类按照应用场景实现摸个方法,这种解决方案叫做 适配器设计模式。
例子:
一个接口:
package net.mylearner.a3_12_pm1;
interface Action {
abstract public void walk();
abstract public void run1();
abstract public void sleep();
abstract public void move();
}
一个类实现这个(些)接口(空实现):
package net.mylearner.a3_12_pm1;
public class ActionAdaptor implements Action {
@Override
public void walk() {
}
@Override
public void run1() {
}
@Override
public void sleep() {
}
@Override
public void move() {
}
}
一个实现类:
package net.mylearner.a3_12_pm1;
public class Person extends ActionAdaptor {
Person() {
}
@Override
public void run1() {
// TODO Auto-generated method stub
System.out.println("Person");
}
}
一个测试类:
package net.mylearner.a3_12_pm1;
public class Test {
public static void main(String[] args) {
Person person = new Person();
person.run1();
}
}
常量管理器设计模式
什么是常量管理器设计模式?
答:
接口中无方法,都是常量。
观察者设计模式
什么事观察者设计模式?
答:1、观察者模式定义了对象之间的一对多关系。多个观察者监听同一个被观察者,当该被观察者的状态发生改变时,会通知所有的观察者。
2、观察者模式中包含四个角色。主题,它指被观察的对象。具体主题是主题子类,通常它包含有经常发生改变的数据,当它的状态发生改变时,向它的各个观察者发出通知;观察者,将对观察主题的改变做出反应;具体观察者中维护一个指向具体目标对象的引用,它存储具体观察者的有关状态,这些状态需要和具体目标的状态保持一致。
3、主题用一个共同的接口来更新观察者。
4、观察者与被观察者之间用松耦合方式结合。
5、有多个观察者时,不可以依赖特定的通知次序。
6、使用观察者模式,可以从被观察者处推或者拉数据。义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
相关文章
- 暂无相关文章
用户点评