我想实现一个变量,它对于抽象的泛型类的每个实现都是静态的。例如,我有一个班级。。。
public abstract class A<T>{
...
}
…和一些。。。
public class Imp1 extends A<Imp1>{
static Imp1 myVar;
...
}
public class Imp2 extends A<Imp2>{
static Imp2 myVar;
...
}
...
在抽象类a中是否有任何关键字来实现类型t的myvar?如果我把它实现为一个静态变量,它会给出一个typeerror,因为静态不能在抽象类中有类型t。如果我把它实现为一个抽象,我就不能从imp1.myvar这样的静态上下文调用它。。。我不认为这是一个重复的问题,虽然我不得不承认我不太明白它。
--编辑--
因为有人指出这可能是一个xy问题,而答案似乎是我的方法无法实现,所以我将尝试从整体上描述这个问题,并尝试找出应该如何解决它。如果人们遇到同样的问题,也许这会帮助他们重新构造代码。
我为自己的数据类型“polynom”编写了一个类(主要是为了练习和娱乐),其中包含了几个方法(加法、乘法、除法等)。它主要基于一个双倍系数表。现在,我想更改它,以便可以使用泛型数据类型。我用所有必需的方法(加法、比较法、乘法、求逆等)实现了一个抽象类。其中之一是,数据类型有一个“中性元素”,一个对加法/乘法没有影响的元素。例如,如果实现实数,则中性元素应为1和0。而这正是我挣扎的重点。目前,我将neural元素实现为polynomy类的参数,但是我想编写其他数据类型,这些数据类型也使用泛型,并且不想每次都将它们添加为参数,因为它们并不真正属于那里。我希望这是可以理解的,如果不是的话,我很乐意进一步更新这个问题。
暂无答案!
目前还没有任何答案,快来回答吧!