什么预期的Java字节代码为泛型类生成?

时间:2017-09-27 10:29:30

标签: java

java通用代码的预期编译类

public Class Abc<T extends Number>{

    private List<T> list;

    public void add(List<Number> argList){

//Expected line for generic replace with List or not

    List<Integer> innerList = new ArrayList<>();

    Object obj = 3;

    //Expected line for this object cast
    innerList.add((int)obj);
    }
    }

每个通用语句的预期输出。

1 个答案:

答案 0 :(得分:1)

类型定义在.class文件中保留为Signature

https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.3

https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.3.4

它们的唯一目的是在以人类可读的形式输出字节码时提供更多上下文。

在运行时,输入会被忽略并且未使用