2017-02-04 26 views
0

我只是在玩java,尝试实现一个小型的地下城游戏。将一个类投射到一个自制类

马现在的问题是,我有一个类“怪物”和类“陷阱”。此外,我有一个类“遭遇”,其中一个怪物或陷阱随机选择并返回与英雄的统计数据进行比较。

我真的没有一个想法如何将这个怪物或陷阱转换为遇到,所以我可以使用它。

这是我遇到当前的方法:

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 
..... 

嗯,我希望我提前说明了问题throughouly足够..感谢您的帮助!

(我看着别处,但没有找到一个slution,可能看起来根本不像够硬,虽然还是根本不知道的keywoard,请原谅那)

+1

我想我可能没有完全理解铸造的概念... – Fapprentice

+1

阅读有关接口 – user2717954

+0

哦,随机只是一个随机int,我不想把unessecary代码放在那里,想单独加速我的问题 – Fapprentice

回答

1

所以,你有一个类遭遇这可以是一个陷阱或怪物,最好的事情是陷阱和怪物都会从遭遇中继承(或实现接口遭遇),所以他们有一些共享方法,那么你可以施放它们,但是如果它们没有实施通用接口或共享一个共同的超类。

+0

但是我不能在接口中编写代码(或者只是在抽象类中) – Fapprentice

+0

哦,我只需要使它默认,得到它:D谢谢 – Fapprentice

+0

抽象类就像是代码是的接口。 –

相关问题