发布网友 发布时间:2022-04-22 03:44
共2个回答
热心网友 时间:2024-03-14 02:53
工厂模式就是在接口和子类之间加入了一个过渡端,通过此过渡端获得接口的实例化对象,这个过渡端也就是所谓的工厂类。这样以后如果再有程序子类要扩充,直接修改工厂类客户端就可以根据标记得到相应的实例,增加了程序的灵活性。eg:
interface Fruit{
public void eat() ;
}
class Apple implements Fruit{
public void eat(){
System.out.println("** $$$$$") ;
}
};
class Orange implements Fruit{
public void eat(){
System.out.println("** #####。") ;
}
};
class Factory{// 定义工厂类
public static Fruit getInstance(String className){
Fruit f = null ;
if("apple".equals(className)){// 判断
f = new Apple() ;
}
if("orange".equals(className)){// 判断
f = new Orange() ;
}
return f ;
}
};
public class InterfaceCaseDemo{
public static void main(String args[]){
Fruit f = Factory.getInstance(null) ;// 实例化接口
f.eat() ;
}
};
热心网友 时间:2024-03-14 02:53
工厂模式在Java程序系统可以说是随处可见。 为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑使用工厂模式,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量。 说白了就是在一个类里写别的类 让外部好调用啊