设计模式-简单工厂模式

这篇博客探讨了在一款RPG游戏中如何运用简单工厂模式来根据用户选择的参数创建不同角色,如天使、英雄和女巫。通过类图和Java代码实现,展示了Role、Angle、Hero和Witch类的抽象和继承关系,以及RoleFactory类的角色实例化过程。在Main类中,演示了如何通过工厂方法获取并显示角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在某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!");

    }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值