【发布时间】:2012-04-07 01:14:04
【问题描述】:
请原谅我的无知,但我无法在其他地方找到答案。
我有以下代码:
int value = 5;
Strategy s = new Strategy(convert(value));
mainClass.setStuff(s, value);
策略使用基于“价值”转换的数字进行初始化。 mainClass 使用未转换的“值”。
我想做的是通过仅向 mainClass 提供要使用的策略以及未转换的值的信息来简化这一点,因此 mainClass 应该对策略进行实例化和初始化并处理该值。
在 C++ 中,这可以通过模板实现:
int value = 5;
mainClass.setStuff<Strategy>(value);
我能以某种方式在 Java 中完成这项工作吗?它似乎不适用于泛型,因为与 C++ 不同,Java 无法推断参数的类型,因此我无法初始化 Strategy。
【问题讨论】: