如何查看Java编译代码

如何查看Java编译代码,java,generics,Java,Generics,我有一个班是家长班 class ClassParent<T> { public void set(T t) { //setter code } } class类父类{ 公共无效集(T) { //设定码 } } 然后我让这个ClassChild扩展ClassParent class ClassChild extend ClassParent<String> { public void set(String str)

我有一个班是家长班

class ClassParent<T> {

    public void set(T t)
    {
         //setter code 
    }
}
class类父类{
公共无效集(T)
{
//设定码
}
}
然后我让这个ClassChild扩展ClassParent

class ClassChild extend ClassParent<String> {

    public void set(String str)
    {
         //setter code
    }
}
类类子级扩展类父级{
公共无效集(字符串str)
{
//设定码
}
}
实例化ClassChild类的新实例

ClassParent<String> child = new ClassChild();
ClassParent-child=new-ClassChild();

显然,为了保留多形性,java编译器将在
ClassChild
类中创建一个桥接方法。我的问题是,在我使用
javac
命令编译代码之后,我想看看编译后的代码是什么样子,但我不知道怎么做。我用记事本++打开了
.class
文件,但我看到的只是胡言乱语。如何查看编译后的代码是我的问题。我对编程基本上是新手。谢谢您使用反编译器。如果您使用的是Eclipse,请安装JADClipse或查看此独立版本。
您还可以使用Javap来反汇编类文件,使用反编译器。
您还可以使用Javap来反汇编类文件

如果您希望看到已编译类的反汇编,
Javap
可能是一种方法。请看这里:


如果您正在寻找编译器在编译过程中使用的中间代码,据我所知,不可能看到它。

如果您希望看到已编译类的反汇编,
javap
。请看这里:


如果您正在寻找编译器在编译过程中使用的中间代码,据我所知不可能看到。

记事本++中的胡言乱语就是编译后的代码。它是二进制的。也许我的问题让我看起来很傻。我知道这是编译后的代码,但我读过好几篇文章,我看到人们发布的编译后的代码与我看到的不一样,我在Notepadd++中只看到了大部分的黑色方块。这是关于搜索工具的吗?这是一个完全合法的问题,标记为重复,有两个问题建议。但是,建议的两个问题中有一个被标记为离题。另一个建议的问题本身被标记为重复。它提出的问题被标记为离题。如果我能投票决定在哪里做这件事,我会把这个问题标记为不公开的重复,让它自己站起来。下面的问题和建议的答案都很有帮助。notepad++中的胡言乱语是编译后的代码。它是二进制的。也许我的问题让我看起来很傻。我知道这是编译后的代码,但我读过好几篇文章,我看到人们发布的编译后的代码与我看到的不一样,我在Notepadd++中只看到了大部分的黑色方块。这是关于搜索工具的吗?这是一个完全合法的问题,标记为重复,有两个问题建议。但是,建议的两个问题中有一个被标记为离题。另一个建议的问题本身被标记为重复。它提出的问题被标记为离题。如果我能投票决定在哪里做这件事,我会把这个问题标记为不公开的重复,让它自己站起来。下面的问题和建议答案都很有用。哦,这就是我要找的。非常感谢。不幸的是,我使用的是Netbeans。Netbeans还有一个反编译器,我不知道你有什么版本。但是你可以在上找到ont。哦,我会查出来的。哦,这就是我要找的。非常感谢。不幸的是,我正在使用Netbeans。Netbeans还有一个反编译器,我不知道你有什么版本。但是你可以在上找到ont。哦,我会查出来的。谢谢你的帮助。很遗憾我不能投赞成票。谢谢你的帮助。很遗憾,我不能投赞成票。