第一次发帖,发表下自己学习回调的一些感想,希望可以帮助新手了解回调的好处;
目的:一个打BOSS的代码
这是一个补刀大神打BOSS的代码,一个简单的回调。
在主函数中写一个打BOSS的方法--这个方法调用了接口的方法----接口的方法在主函数中实现;
优点如下:
1.如果只有一个BOSS,游戏就完蛋了,每个BOSS只需要调用杀BOSS的方法即可,扩展性强
2.每个BOSS在击杀过程中将发生的状况不同,只需要实现 onBefore和onKill方法即可,修改非常方便。
3.封装了关键数据,如果BOSS的血量,如果血量写入主函数,就意味着可以任意修改,那还得了,游戏公司都可以倒闭了,要知道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反射很容易拿到方法进行修改的。