package 工厂方法模式;
public interface Human {
public void laugh();
public void cry();
public void talk();
}
//****************************************************************************
package 工厂方法模式;
public class WhiteHuman implements Human {
public void laugh() {
System.out.println("白种人笑了····");
}
public void cry() {
System.out.println("白种人哭了····");
}
public void talk() {
System.out.println("白种人在说话了····");
}
}
//****************************************************************************
package 工厂方法模式;
public class BlackHuman implements Human {
public void laugh() {
System.out.println("黑种人笑了····");
}
public void cry() {
System.out.println("黑种人哭了····");
}
public void talk() {
System.out.println("黑种人在说话了····");
}
}
//****************************************************************************
package 工厂方法模式;
public class YellowHuman implements Human {
public void laugh() {
System.out.println("黄种人笑了····");
}
public void cry() {
System.out.println("黄种人哭了····");
}
public void talk() {
System.out.println("黄种人在说话了····");
}
}
//****************************************************************************
package 工厂方法模式;
public class HumanFactory {
public static Human createHuman(Class c) throws InstantiationException, IllegalAccessException, ClassNotFoundException{
Human human = null;
human = (Human)Class.forName(c.getName()).newInstance();
return human;
}
}
//****************************************************************************
package 工厂方法模式;
public class NvWa {
public static void main(String aegs[]) throws InstantiationException, IllegalAccessException, ClassNotFoundException{
System.out.println("····造出的第一批人是这样的:白人····");
Human whiteHuman = HumanFactory.createHuman(WhiteHuman.class);
whiteHuman.cry();
whiteHuman.laugh();
whiteHuman.talk();
System.out.println("····造出的第二批人是这样的:黑人····");
Human BlackHuman = HumanFactory.createHuman(BlackHuman.class);
BlackHuman.cry();
BlackHuman.laugh();
BlackHuman.talk();
System.out.println("····造出的第三批人是这样的:黄种人····");
Human YellowHuman = HumanFactory.createHuman(YellowHuman.class);
YellowHuman.cry();
YellowHuman.laugh();
YellowHuman.talk();
}
}
工厂方法模式A
最新推荐文章于 2024-11-12 21:14:07 发布