今天课堂上老师通过一个例子引出工厂模式,下面是课后将记住的部分整理后所得。
import java.util.Scanner;
public class User2 {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Shop2 shop = new Shop2();
Scanner sc = new Scanner(System.in);
//String s = sc.next();
Drink drink = shop.getDrink(sc.next());
String sName = drink.getName();
System.out.println(sName);
}
}
class Shop2{
public Drink getDrink( String type ) throws Exception {
Drink drink = (Drink)Class.forName(type).newInstance();
return drink;
}
}
class Md extends Drink{
public String getName() {
return "脉动";
}
}
class Kele extends Drink{
public String getName() {
return "可乐";
}
}
abstract class Drink{
public abstract String getName();
}