java静态工厂方法
时间: 2023-11-10 18:00:58 浏览: 43
Java中的静态工厂方法是一种创建对象的方法,它是通过类的静态方法来返回对象的实例。它与传统的构造函数不同,因为它可以自定义对象的创建逻辑,并且可以选择返回已经存在的对象实例。
静态工厂方法的优点包括:
1. 它可以有一个具有描述性名称的方法来创建对象,使代码更加可读和易于理解。
2. 它可以缓存已经创建的对象,在需要同一对象多次创建时提供性能优化。
3. 它可以返回任何子类型的对象,而不仅仅是类本身。
4. 它可以在编写代码时不要求指定对象所属类的具体实现。
下面是一个简单的示例,演示如何在Java中创建一个静态工厂方法:
```java
public class Car {
private String brand;
private int year;
private Car(String brand, int year) {
this.brand = brand;
this.year = year;
}
public static Car createCar(String brand, int year) {
// 在这里可以添加一些自定义的逻辑,如对象的验证或缓存
return new Car(brand, year);
}
// 其他方法...
public String getBrand() {
return brand;
}
public int getYear() {
return year;
}
}
```
使用示例:
```java
Car car = Car.createCar("Toyota", 2021);
System.out.println(car.getBrand()); // 输出:Toyota
System.out.println(car.getYear()); // 输出:2021
```