简单工厂模式简单工厂模式
缺点:
不符合开闭原则
工厂类
public class SimpleCarFactory {
public static T extends Car T createCar(Class T c) {
Car car = null;
try {
car = (Car) Class.forName(c.getName()).newInstance();
} catch (Exception e) {
// Handle exception...
}
return (T) car;
}
}...
简单工厂模式
缺点:
不符合开闭原则
工厂类
public class SimpleCarFactory {
public static T extends Car T createCar(Class T c) {
Car car = null;
try {
car = (Car) Class.forName(c.getName()).newInstance();
} catch (Exception e) {
// Handle exception...
}
return (T) car;
}
}
客户端代码
private static void testSimpleFactory() {
Car audi = SimpleCarFactory.createCar(Audi.class);
audi.showDes();
audi.start();
audi.showCurrentSpeed();
audi.stop();
Car bmw = SimpleCarFactory.createCar(BMW.class);
bmw.showDes();
bmw.start();
bmw.showCurrentSpeed();
bmw.stop();
Car benz = SimpleCarFactory.createCar(Benz.class);
benz.showDes();
benz.start();
benz.showCurrentSpeed();
benz.stop(); }
运行结果:
引用
I'm Audi
Audi started...
180
Audi stoped...
I'm BMW
BMW started...
200
BMW stoped...
I'm Benz
Benz started...
210
Benz stoped...
本文档为【简单工厂模式】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。