Java Type Erasure在哪里?为什么从.class文件反编译的代码与java源代码中的代码完全相同

时间:2014-11-03 06:54:09

标签: java type-erasure

我们知道" Java Type Erasure"机制在编译成.class文件时修改我们的java源代码中的类型。 但是,今天我使用Java Decompiler来反编译一个类文件,它向我展示了我在java文件中输入的完全相同的代码。

我想知道吗? " Java Type Erasure"机制? JD如何知道?

java code:

public class C1 extends C<D>{

public C1()
{

}

public void myPrint()
{
    System.out.println("Hello C1");
}

public static void main(String[]args)
{
    System.out.println("Test");
}

}

JD软件从.class文件解码的代码:

import java.io.PrintStream;

public class C1 extends C<D>
{
  public void myPrint()
  {
    System.out.println("Hello C1");
  }

  public static void main(String[] args)
  {
    System.out.println("Test");
  }
}

你看,它们是一样的,它让我感到困惑的是&#34; Type erasure&#34;作品?

0 个答案:

没有答案