导航:首页 > 解决方法 > 简单工厂方法模式java

简单工厂方法模式java

发布时间:2022-02-21 13:47:30

A. Java与模式,简单工厂模式的方法为什么是静态的

在不需要用对象成员的时候就用类成员,这个没什么好说的... 一定要说的话静态方法调用速度快

B. java 设计模式(工厂方法)

面向抽象(抽象类或接口)编程。
IWorkFactory studentWorkFactory = new StudentWorkFactory(); 注意:类型是接口类型,即抽象工厂,抽象工厂生产的是抽象产品,而new的则是具体工厂,是由子类实现的,具体工厂生产具体产品。面向抽象的好处:1.在设计抽象的时候不用管具体的实现,只要定义接口知道它用来干什么就行,这样,我只需要知道抽象接口就能继续下面的开发设计工作了,而不用事先设计具体的实现内容;2. 可以扩展多个子类实现抽象接口,更利于系统后期的扩展,而对原系统不造成任何影响,即:开-闭原则。

TeacherWork tt = new TeacherWork(); 不用说就是面向具体实现类编程,缺点就是扩展性不好,对系统后期维护扩展影响较大。

举个简单的例子:
假如在系统的A.java中代码中使用了TeacherWork 类型对象,是满足了目前软件的需求,但是,如果有一天需求变化了需要一个StudentWork 类型对象,该怎么办?只能修改A.java类来满足这样的修改需求。这样就影响了原来系统结构稳定性,需要重新调试和测试,而这带来的维护成本是非常大的,有时可能还会带来系统错误,而影响系统运行。
如果在A.java类中应用Work接口类型就不会存在这种问题,A.java不需要任何修改,只需要修改注入到A中的Work接口的具体实现类即可。

面向抽象编程的好处就在于对系统维护和扩展上,即在不影响原系统稳定运行的基础上增加新的扩展行为,即要符合“开-闭”原则。可能会因此而失去一定的效率问题,但是对于后期的维护成本来说,这个可以忽略不计。 推荐你一本好书:《软件秘笈-设计模式那点事》其中讲解的设计模式很到位,还有每个模式的静态类图和JDK中设计模式的具体分析讲解,读了收获一定很大。祝你成功!

C. 求java工厂模式的一个简单代码例子,尽量简单

这个应该比较简单一点。

某系统日志记录器要求支持多种日志记录方式,如文件记录、数据库记录等,且用户可以根据要求动态选择日志记录方式。现使用工厂方法模式设计该系统,并写出相应Java代码。


interface Log{

public void writeLog();

}


class FileLog implements Log{

public void writeLog(){

System.out.println("文件记录");

}

}


class DatabaseLog implements Log{

public void writeLog(){

System.out.println("数据库记录");

}

}


interface LogFactory{

public Log createLog();

}


class FileLogFactory implements LogFactory{

public Log createLog(){

return new FileLog();

}

}


class DatabaseLogFactory implements LogFactory{

public Log createLog(){

return new DatabaseLog();

}

}


public class Client{

public static void main(String[] args) {

try{

Log log;

LogFactory factory;

//这里可以改成使用DOM和Java反射机制读取XML文件,获取工厂类名

factory=new DatabaseLogFactory ();

log=factory.createLog();

log.writeLog();

}

catch(Exception e){

System.out.println(e.getMessage());

}

}

}

D. 工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

工厂模式,简单工厂模式,抽象工厂模式三者区别如下:

1、首先,三者的创建对象是不相同的。

进行创建对象时,“工厂模式”不使用new创建对象,而是使用Factory模式;“简单工厂模式”则是通过fw模式来建立对象;“抽象工厂模式”使用迭代模式来创建对象。

(4)简单工厂方法模式java扩展阅读:

简单工厂模式优缺点

1、优点:
工厂类含有必要的判断逻辑,可以决定在什么时候创建哪一个产品类的实例,客户端可以免除直接创建产品对象的责任,而仅仅"消费"产品。简单工厂模式通过这种做法实现了对责任的分割。

当产品有复杂的多层等级结构时,工厂类只有自己,以不变应万变,就是模式的缺点。因为工厂类集中了所有产品创建逻辑,一旦不能正常工作,整个系统都要受到影响。

2、缺点:
系统扩展困难,一旦添加新产品就不得不修改工厂逻辑,有可能造成工厂逻辑过于复杂,违背了"开放--封闭"原则(OCP)。另外,简单工厂模式通常使用静态工厂方法,这使得无法由子类继承,造成工厂角色无法形成基于继承的等级结构。

E. JAVA中关于工厂方法模式和使用多个接口的疑问

但是你这样每次一个具体类都要实现很多接口。。小程序看不出来工厂模式的好处。。

F. Java的简单工厂模式中子类怎么调用自己特有的方法(父类没有)

如果你工厂类创建出来看是父类型,就得强转成子类,再调用其方法。

G. java与模式,这段代码怎么反映简单工厂模式了

工厂模式 就是用对象不要自己new 了,要先创建其对象的工厂,DateFormat就是,getDateInstance是得到该对象的一个实例(就是得到你想要的对象),然后就可以继续使用对象的方法做事了

H. java中的工厂模式是什么意思

工厂模式简单的讲就是用工厂方法代替了new的操作,
在通俗点就是说,你new一个对象的时候直接调用工厂方法就行了,
在编程时,需要定义一个工厂接口,由不同的的子类去实现,再定一个具体工厂类,定义一个产生实例的方法,我们通过这个方法来获得实例就行了,

阅读全文

与简单工厂方法模式java相关的资料

热点内容
教学测量和评价的方法有哪些 浏览:991
小米音箱无线连接方法 浏览:128
橱柜三组抽屉滑道安装方法 浏览:271
1如何用方法把0号干射 浏览:149
鱼竿汗带怎么使用方法 浏览:524
聚光合金分析仪使用方法 浏览:709
油箱油泵连接方法 浏览:432
refa按摩胸部使用方法 浏览:162
小学数学的一般方法有哪些 浏览:108
子宫息肉有没有治疗方法 浏览:4
人性的博弈方法步骤 浏览:845
不用纳豆粉做纳豆的方法视频 浏览:223
金枪鱼自热米饭食用方法 浏览:438
演员快速减肥方法 浏览:115
星星怎么叠简单方法图片 浏览:986
豆油的制作方法有什么 浏览:585
没有灭火器如何正确的灭火方法 浏览:208
菜园豌豆种植方法 浏览:496
气喘民间用什么土方法好 浏览:136
长方形纸船方法步骤 浏览:842