Java 1.4 工厂问题
我有一个工厂,我想限制可能传递到 get 方法中的可能值。
public static class FooFactory{
public static final String TYPE1= "type1";
public static Foo getFoo(String type){
switch(type){
case "type1":
return new Type1();
}
}
}
要使用这个:
FooFactory.getFoo(FooFactory.TYPE1);
我想限制可能传入的参数。是否有一个想法是创建一个 Type 抽象类,然后子类化并使用 Type 作为参数?
I have a factory, and I want to restrict the possible values that may be passed into the get method.
public static class FooFactory{
public static final String TYPE1= "type1";
public static Foo getFoo(String type){
switch(type){
case "type1":
return new Type1();
}
}
}
To use this:
FooFactory.getFoo(FooFactory.TYPE1);
I'd like to restrict the parameters that may be passed in. Is an idea to make a Type abstract class, then subclass and use Type as the parameter?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不要子类化它,只需创建一个带有带有 Stirng 参数的私有构造函数的
Type
类,并定义公共Type
常量。像这样的东西。
Don't subclass it, just create a
Type
class with a private constructor that takes a stirng parameter, and define publicType
constants.Something like this.