在不使用"new"关键字传递和返回类对象的情况下,可以使用静态工厂方法来创建和返回类对象。下面是一个示例:
public class MyClass {
private int value;
private MyClass(int value) {
this.value = value;
}
public int getValue() {
return value;
}
public static MyClass create(int value) {
return new MyClass(value);
}
}
public class Main {
public static void main(String[] args) {
// 使用静态工厂方法创建类对象
MyClass obj1 = MyClass.create(10);
System.out.println(obj1.getValue()); // 输出: 10
// 通过其他方法返回类对象
MyClass obj2 = getMyClassObject(20);
System.out.println(obj2.getValue()); // 输出: 20
}
public static MyClass getMyClassObject(int value) {
return MyClass.create(value);
}
}
在上述示例中,使用私有的构造方法来防止直接通过"new"关键字创建类对象。通过静态工厂方法create()来创建类对象,该方法是通过调用私有构造方法并传递参数来创建对象的。另外,可以通过其他方法返回类对象,如getMyClassObject()方法中返回了一个通过静态工厂方法创建的类对象。