工厂方法模式A


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();
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值