【发布时间】:2017-09-03 23:36:05
【问题描述】:
我有一个抽象类Skill,实际的技能类从中继承了共享字段和方法。然后,Character 类为每一个创建新实例,例如:
public class Character {
String name;
String className;
String raceName;
Acrobatics acrobatics = new Acrobatics();
Diplomacy diplomacy = new Diplomacy();
//etc.
}
因此,如果您不熟悉 d20 系统,当您使用 Skill 时,它会检查难度等级。现在,技能类本身有一种方法可以发现 DC (discoverDC()) 以进行任何检查。
问题在于Skill 对象必须与创建它的Character 对象核对才能发现所有相关修饰符。
所以要让它以这种方式工作,我想我需要以某种方式附加对创建 Skill 对象的 Character 对象的引用,但我不知道它是如何工作的。我尝试在创建 Character 对象时将它们作为参数传递给 Skill 对象,但编译器只是被激怒了。
我很确定一种解决方案是创建另一个具有这些功能的对象(如 GM)并让它寻找相关的修饰符。但是,我真的很想知道是否有任何方法可以让它按照我最初的组合方式工作。
【问题讨论】:
-
我尝试在创建技能对象时将 Character 对象作为参数传递给它们,但编译器只是被激怒了 而不是这样模糊的描述,你应该发布我已经尝试过
,但它会产生 。如果您不提供这些详细信息,我们无法告诉您代码错误的原因以及如何修复它。 我真的很想知道是否有任何方法可以让它按照我最初的组合方式工作:我们不知道你是如何组合在一起的,因为你没有发布你的代码. -
编译器刺激通常表明你做错了。别那样做。做什么?我们怎么可能知道?
-
感谢您的关注:)
标签: java