用java写一个动态工厂
时间: 2023-03-05 10:31:17 浏览: 77
一个简单的工厂模式(java)
你可以使用 Java 的反射机制来实现一个动态工厂。
下面是一个简单的示例:
```
interface Shape {
void draw();
}
class Circle implements Shape {
@Override
public void draw() {
System.out.println("Drawing a Circle");
}
}
class Square implements Shape {
@Override
public void draw() {
System.out.println("Drawing a Square");
}
}
class ShapeFactory {
public static Shape getShape(String shapeType) {
if (shapeType == null) {
return null;
}
if (shapeType.equalsIgnoreCase("CIRCLE")) {
return new Circle();
} else if (shapeType.equalsIgnoreCase("SQUARE")) {
return new Square();
}
return null;
}
}
public class Main {
public static void main(String[] args) {
Shape shape1 = ShapeFactory.getShape("CIRCLE");
shape1.draw();
Shape shape2 = ShapeFactory.getShape("SQUARE");
shape2.draw();
}
}
```
输出:
```
Drawing a Circle
Drawing a Square
```
通过这个示例,你可以看到如何使用 Java 反射机制动态地创建一个对象。
阅读全文