工厂方法

工厂方法:

1.定义出抽象的接口,定义通用方法名
	2.定义具体类继承抽象接口,实现各自的方法
	3.定义工厂类,定义方法(接收字符串,返回指定的具体类 if if if..)
	4.客户端调用工厂类实例函数,进而使用接口来调用函数

1.接口
public interface Shape {
	public abstract void tell();
}


2.具体类
class Rectangle implements Shape{
	@Override
	public void tell() {
		System.out.println("rectangle");
	}
}

class Square implements Shape{
	@Override
	public void tell() {
		System.out.println("square");
	}
}

3.工厂类
class ShapeFactory{
	public Shape getShape(String shapeName) {
		if(shapeName.equalsIgnoreCase("rectangle")) 
			return new Rectangle();
		if(shapeName.equalsIgnoreCase("square")) 
			return new Square();	
		return null;
	}
}

4.客户端
public static void main(String[] args) {
	ShapeFactory factory = new ShapeFactory();
	Shape shape = factory.getShape("rectangle");
	shape.tell();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值