在某RPG游戏中使用简单工厂模式创建游戏角色,该游戏可根据用户所选择的参数来创建不同的角色(Role),例如参数为“angel”时创建一个天使角色,参数为“hero”时创建一个英雄角色,参数为“witch”时创建一个女巫角色。绘制类图并使用Java语言编程模拟实现。
类图:
Role类:
public abstract class Role {
public abstract void display();
}
Angle类:
public class Angle extends Role {
public Angle(){}
public void display(){
System.out.println("angle");
}
}
Hero类:
public class Hero extends Role {
public Hero(){}
public void display(){
System.out.println("hero");
}
}
Witch类:
public class Witch extends Role {
public Witch(){}
public void display(){
System.out.println("witch");
}
}
RoleFactory类:
public class RoleFactory {
public static Role getRole(String type){
Role role = null;
if (type.equalsIgnoreCase("angle")){
role = new Angle();
}
if (type.equalsIgnoreCase("witch")){
role = new Witch();
}
if (type.equalsIgnoreCase("Hero")){
role = new Hero();
}
return role;
}
}
Main类(客户端):
public class Main {
public static void main(String[] args) {
Role role;
role= RoleFactory.getRole("hero");
if (role==null){
System.out.println("创建角色失败...请检查参数");
}else{
role.display();
}
// System.out.println("Hello World!");
}
}