我只是在玩Java并尝试实现一个小型Dungeon游戏。
马云当前的问题是我有一个班级"怪物"和一个班级" Trap"。此外,我有一个班级"遭遇"其中随机选择怪物或陷阱并返回以与英雄的统计数据进行比较。我真的没有想法如何将这个怪物或陷阱变成一次遭遇,所以我可以使用它。
这是我目前遇到的方法:
public Encounter generate(){
Encounter encounter = new encounter();
Trap trap1 = new Trap(random, trap1);
Monster monster1 = new Monster(random, random);
if (random > 5){
encounter = (Encounter) Monster; (?) //this is where I need help
.....
嗯,我希望我已经足够解释了这个问题..在此先感谢您的帮助!
(我看了别处,但没有找到一个洗脱,可能看起来不够硬或者根本就不知道一个关键,请原谅)
答案 0 :(得分:1)
所以你有一个类Encounter可以是一个陷阱或一个怪物,最好的事情是陷阱和怪物继承遭遇(或实现接口遇到),所以他们有一些共享方法,那么你可以只是强制转换它们,但是如果它们没有实现公共接口或共享一个共同的超类,则无法强制转换它们。