interface Fruit {
void eat();
}
class Apple implements Fruit {
public void eat() {
System.out.println("I am eating apple.");
}
}
class Orange implements Fruit {
public void eat() {
System.out.println("I am eating orange.");
}
}
class Factory {
public Fruit getInstance(String className) {
Fruit f = null;
if ("apple".equals(className)) {
f = new Apple();
} else {
f = new Orange();
}
return f;
}
}
public class InterfaceDemo04 {
public static void main(String[] args) {
Factory factory = new Factory();
Fruit f = null;
f = factory.getInstance("apple");
f.eat();
}
}
原文:http://www.cnblogs.com/vonk/p/3889562.html