使用简单工厂模式设计一个可以创建不同几何形状
时间: 2023-06-05 22:47:21 浏览: 222
simple_factory(第一题)_dangervm5_factory_简单工厂的实例代码_
简单工厂模式是一种创建型设计模式,它可以通过一个工厂类来创建不同的对象。在这个模式中,我们可以定义一个接口或抽象类作为产品的基类,然后通过工厂类来创建不同的产品实例。
对于创建不同的几何形状,我们可以定义一个接口或抽象类作为几何形状的基类,然后通过工厂类来创建不同的几何形状实例。具体实现可以参考以下代码:
// 定义几何形状的基类
abstract class Shape {
public abstract void draw();
}
// 定义不同的几何形状
class Circle extends Shape {
public void draw() {
System.out.println("画一个圆形");
}
}
class Rectangle extends Shape {
public void draw() {
System.out.println("画一个矩形");
}
}
class Triangle extends Shape {
public void draw() {
System.out.println("画一个三角形");
}
}
// 定义工厂类
class ShapeFactory {
public static Shape createShape(String type) {
Shape shape = null;
if (type.equals("circle")) {
shape = new Circle();
} else if (type.equals("rectangle")) {
shape = new Rectangle();
} else if (type.equals("triangle")) {
shape = new Triangle();
}
return shape;
}
}
// 使用工厂类创建不同的几何形状
public class Main {
public static void main(String[] args) {
Shape circle = ShapeFactory.createShape("circle");
circle.draw();
Shape rectangle = ShapeFactory.createShape("rectangle");
rectangle.draw();
Shape triangle = ShapeFactory.createShape("triangle");
triangle.draw();
}
}
通过上述代码,我们可以使用工厂类来创建不同的几何形状,而不需要直接实例化具体的几何形状类。这样可以使代码更加灵活和可扩展。
阅读全文