工厂设计模式中通过Factory设计来描述的有关代码是什么?
interface IFruit { // 定叉一个描述水果的操作
public void eat() ; // 吃水果
}
class Factory {
// 因为此时Factory产生实例化对象没有意义
public static IFruit getInstance (String className) {
if (“apple”.equals(className)) {
return new Apple() ;
}
if (“orange”.equals(className)) {
return new Orange() ;
}
Return null ;
}
}
class Apple implements IFruit {
public void eat() {
System.out.println("削皮吃苹果! ") ;
class Orange implements IFruit {
public void eat() {
System.out.println("削皮吃橘子! ") ;
}
}
public class TestDemo {
public static void main (String args[]) {
If (args.length != 1) { // 没有传递一个参数
System.out.println("对不起,程序执行错误,正确的格式:java TestDemo类名称") ;
System.exit(1); // 退出程序执行
}
IFruit fruit = Factory.getInstance (args[0]) ;
fruit.eat();
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。