租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

java简单工厂模式怎么应用,java简单工厂模式实例知乎

发布时间:2023-08-03 08:29:16

java简单工厂模式怎样利用

简单工厂模式是一种创建对象的设计模式,它通过一个工厂类来封装对象的创建进程,客户端无需直接调用具体的构造函数来创建对象,只需要通过工厂类来创建对象。
在Java中,利用简单工厂模式可以依照以下步骤进行:
1. 创建一个抽象产品类,定义产品的共同属性和方法。
2. 创建具体产品类,继承抽象产品类,并实现其定义的方法。
3. 创建一个工厂类,用于创建具体产品对象。工厂类通常包括一个静态方法,根据传入的参数来创建区分的产品对象。
4. 在客户端代码中,通过调用工厂类的静态方法来创建具体产品对象。
下面是一个简单的示例,使用简单工厂模式创建区分形状的对象:
```java
// 抽象产品类
abstract class Shape {
public abstract void draw();
}
// 具体产品类
class Rectangle extends Shape {
@Override
public void draw() {
System.out.println("Draw a rectangle");
}
}
class Circle extends Shape {
@Override
public void draw() {
System.out.println("Draw a circle");
}
}
// 工厂类
class ShapeFactory {
public static Shape createShape(String shapeType) {
if (shapeType.equalsIgnoreCase("rectangle")) {
return new Rectangle();
} else if (shapeType.equalsIgnoreCase("circle")) {
return new Circle();
} else {
return null;
}
}
}
// 客户端代码
public class Main {
public static void main(String[] args) {
Shape rectangle = ShapeFactory.createShape("rectangle");
rectangle.draw();
Shape circle = ShapeFactory.createShape("circle");
circle.draw();
}
}
```
运行上述代码,将输出:
```
Draw a rectangle
Draw a circle
```
在上面的示例中,抽象产品类是`Shape`,具体产品类有`Rectangle`和`Circle`。工厂类`ShapeFactory`包括一个静态方法`createShape`,根据传入的参数来创建区分的具体产品对象。客户端通过调用工厂类的静态方法来创建产品对象,并调用其方法实现相应的功能。