JAVA_设计模式_创建型_工厂模式_简单工厂

使用范围最广

package com.bjsxt.create.factory.simplefactory;

public interface Car {
	void run();
}

package com.bjsxt.create.factory.simplefactory;

public class Audi implements Car{

	@Override
	public void run() {
		System.out.println("奥迪在跑!");
	}

}

package com.bjsxt.create.factory.simplefactory;

public class Byd implements Car{

	@Override
	public void run() {
		System.out.println("比亚迪在跑!");
	}

}

package com.bjsxt.create.factory.simplefactory;
/**
 * 简单工厂类
 * @author WL20180732
 *
 */
public class CarFactory {
	public static Car createCar(String type) {
		if ("奥迪".equals(type)) {
			return new Audi();
		} else if ("比亚迪".equals(type)) {
			return new Byd();
		} else {
			return null;
		}
	}
}

package com.bjsxt.create.factory.simplefactory;

/**
 * 简单工厂类
 * @author WL20180732
 *
 */
public class CarFactory02 {
	public static Car createAudi() {
		return new Audi();
	}
	
	public static Car createByd() {
		return new Byd();
	}
}

package com.bjsxt.create.factory.simplefactory;

/**
 * 测试在没有工厂模式的情况下
 * @author WL20180732
 *
 */
public class Client01 { // 调用者
	
	public static void main(String[] args) {
		Car c1 = new Audi();
		Car c2 = new Byd();
		
		c1.run();
		c2.run();
	}
}

package com.bjsxt.create.factory.simplefactory;

/**
 * 测试在简单工厂模式的情况下
 * 常用简单工厂模式
 * @author WL20180732
 *
 */
public class Client02 { // 调用者
	
	public static void main(String[] args) {
		Car c1 = CarFactory.createCar("奥迪");
		Car c2 = CarFactory.createCar("比亚迪");
		
		c1.run();
		c2.run();
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值