Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在访问泛型类成员的方法期间发生ClassCastException_Java_Generics_Exception - Fatal编程技术网

Java 在访问泛型类成员的方法期间发生ClassCastException

Java 在访问泛型类成员的方法期间发生ClassCastException,java,generics,exception,Java,Generics,Exception,我在线程“main”java.lang.ClassCastException中遇到运行时错误异常:m.compiler.datatypes.Int无法转换为java.lang.Integer 以下是代码片段: public abstract class DataType<E> { protected E value; ... } 如果我在比较中打印值,则值是正确的,但即使我使用 other.value.getClass() 我有个例外。编译器没有错误和警告。在某些情况下,您必须为

我在线程“main”java.lang.ClassCastException中遇到运行时错误
异常:m.compiler.datatypes.Int无法转换为java.lang.Integer

以下是代码片段:

public abstract class DataType<E> {
protected E value;
...
}
如果我在比较中打印值,则值是正确的,但即使我使用

other.value.getClass()

我有个例外。编译器没有错误和警告。

在某些情况下,您必须为
分配
Int
。。。应该有一个警告。您能将
值设置为最终值吗

在某些情况下,您必须为
值指定
Int
。。。应该有一个警告。您能将
值设置为最终值吗

你确定没有收到任何类型的安全警告吗?泛型类型似乎不匹配。
if(左值instanceof Int){Int lInt=(Int)左值;Int result=(Int)lInt.compare(rInt)不,我真的没有收到任何警告或错误。我甚至检查了我传递的每一种泛型。我不明白为什么
一经使用就变成了
Int
,但在它变成
整数之前?听起来好像问题出在rInt上-rInt是如何初始化的?在某个时候,你需要知道您没有为值分配Int…并且应该有一个警告。您能将
值设置为final吗?您确定没有收到任何类型安全警告吗?似乎泛型类型不匹配。
if(lValue instanceof Int){Int lInt=(Int)lValue;Int result=(Int)lInt.compare(rInt)不,我真的没有收到任何警告或错误。我甚至检查了我传递的每一种泛型。我不明白为什么
一经使用就变成了
Int
,但在它变成
整数之前?听起来好像问题出在rInt上-rInt是如何初始化的?在某个时候,你需要知道我没有给值赋值,应该有一个警告。你能把
value
final吗?
        if(lValue instanceof Int) {
            Int lInt = (Int) lValue;
            Int result = (Int) lInt.compare(rInt);
other.value.getClass()