java 回调的使用场景,新手可以看看

第一次发帖,发表下自己学习回调的一些感想,希望可以帮助新手了解回调的好处;

目的:一个打BOSS的代码


 public class KillBossUtils{       
  //接口
    public interface killBossCallBack {
        //打boss前--
        void onBefore(int xueliang);
        //打boss中--BOSS会干啥。。这个策划说的算。
        void onKill(int xueliang);
    }

 
    public static void killBoss(killBossCallBack killBossCallBack) {
        int bossXueliang = 100000;//boss的最大血量。
        killBossCallBack.onBefore(bossXueliang);
        for (int i = bossXueliang; i > 0; i--) {
            killBossCallBack.onKill(i);//BOSS每掉一滴血,回调一次主函数
        }
    }
}
public class BuDaoDaShen{
    public void main() {
        //主函数
        killBoss(new killBossCallBack() {
            @Override
            public void onBefore(int xueliang) {
                //BOSS会干啥。。这个策划说的算,同时还可以获取boss的最大血量
            }
            @Override
            public void onKill(int xueliang) {
                //BOSS会干啥。。这个策划说的算,同时还可以实时获取boss的最大血量
            }
        });
    }
}



这是一个补刀大神打BOSS的代码,一个简单的回调。
在主函数中写一个打BOSS的方法--这个方法调用了接口的方法----接口的方法在主函数中实现;
优点如下:

1.如果只有一个BOSS,游戏就完蛋了,每个BOSS只需要调用杀BOSS的方法即可,扩展性强
2.每个BOSS在击杀过程中将发生的状况不同,只需要实现 onBefore和onKill方法即可,修改非常方便。
3.封装了关键数据,如果BOSS的血量,如果血量写入主函数,就意味着可以任意修改,那还得了,游戏公司都可以倒闭了,要知道JAVA反射很容易拿到方法进行修改的。
   


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值