.java编译成.class 与 .class反编译成.java

.java编译成.class 与 .class反编译成.java.java编译成.class 与 .class反编译成.java

大家好,又见面了,我是你们的朋友全栈君。

了解下这两个文件类型:.java文件是给人看的,.class是给计算机看的。程序员编写的是.java文件,经编译后生成.class文件给计算执行。

相信这两句话很形象的说明了这两个文件的关系了。

1,首先反编译器就是jd-gui这个软件了,可以把jar包直接拖进这个软件就能够看到代码了。当然jd-gui不能编译.class文件。

2,怎么把.class转成.java文件呢?也是在jd-gui文件里面。点击要转的文件,然后file–>save Source,如下图:

.java编译成.class 与 .class反编译成.java

保存后就是.java文件了。当然可以直接保存整个jar包,也可以是单个文件。

3,eclipse里面怎么看.class文件?新建的一个.java文件有.class的前提是要编译成功,比我常用的项目是maven工程,要先maven install编译才能生成“完整的”.class文件,单单保存是不行的,这里下面会有说明。eclipse可以通过ctrl+shift+R,然后输入类名,可同时看到.class和.java文件。

.java编译成.class 与 .class反编译成.java

4,怎么编译单个的java文件呢?方法有很多,这里我介绍个在dos命令中生成.class文件的办法。

首先在eclipse中新建个aa.java类,里面就啥都不写了,最好也别带汉字,不然后面编译的时候会报编码错误,找不到符合等各种错误。然后拷到桌面上,打开dos命令,输入以下命令:

E:\jdk1.7\bin\javac.exe  C:\Users\Administrator\Desktop\aa.java

解释:E:\jdk1.7\bin\javac.exe 是javac.exe的安装目录,其实找到jdk就行了。C:\Users\Administrator\Desktop\aa.java是刚才写的测试类,把他拷到桌面的位置。

最后Enter运行命令,运行成功的话就是可以再aa的目录下生成同名的.class文件了。如图:

.java编译成.class 与 .class反编译成.java

.java编译成.class 与 .class反编译成.java

这里对3解说下,编译单个文件的时候,如果这个类引入的有其他新建的类,就会编译报错,显示找不到符号,这个也很容易理解,因为实在javac虚拟机上执行的,我们写的测试类内容只能包含jdk自带的代码,对于我们引入自己新建类肯定是不识别的。也就是在eclipse中虽然保存后有.class文件,但是不一定编译成功。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106105.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JavaScript正则表达式的练习

    JavaScript正则表达式的练习JavaScript正则表达式的练习

    2025年11月26日
    3
  • Eurake注册中心

    Eurake注册中心 eureka找到了 有了服务端server用于服务注册与发现,系统中其他的微服务使用客户端client链接服务端,并且维持心跳连接,server端会不断的检查client端是否存活,心跳检测,健康检查,负载均衡功能eureka.client.fetch-registry=false一个服务可以即是…

    2022年6月11日
    41
  • 五大常用算法之三:贪心算法

    一、基本概念:所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法没有固定的算法框架,算法设计的关键

    2021年12月25日
    44
  • srvctl start_局部视图的配置规定是

    srvctl start_局部视图的配置规定是SRVCTL概述SRVCTL是ORACLERAC集群配置管理的工具,可以管理Database、Instance、ASM、Service、Listener和NodeApplication,NodeApplication包括GSD,ONS,VIP。srvctl的命令格式为srvctl<command><target>[options]srvctlUs…

    2025年10月31日
    3
  • svn语言安装包过程(如何打开svn)

    一,首先要查看自己电脑安装的svn版本二,找到和版本相同的svn中文安装包,官方地址  https://tortoisesvn.net/downloads.html官方是最新的语言包,楼主的1.10.2的语言包是通过如下链接下载的,不需要花费CSDN币,只需要扫码关注CSDN的一个公众号即可免费下载!!地址:https://download.csdn.net/download/mys…

    2022年4月10日
    186
  • vscode运行python_vscode python 调试

    vscode运行python_vscode python 调试Vscode+python+flake8安装配置使用总述Vscode+python环境下,配置flake8与yapf,以及使用方法1.1. Flake8——Python静态代码检查工具Flake8是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强。Flake8是对下面三个工具的封装: PyFlakes:静态检查Python代码逻辑错误的工具。 Pep8:静态检查PEP

    2025年11月3日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号