How to Convert a Class File to a Java File?
What is a programming language?
Before introducing compilation and decompilation, let's briefly introduce the Programming Language. Programming languages are divided into low-level languages and high-level languages.
Machine language and assembly language are low-level languages, and programs are written directly with computer instructions.
C, C ++, Java, and Python are high-level languages. Programs are written in statements, which are abstract representations of computer instructions.
What is compilation?
There are two languages mentioned above, a low-level language and a high-level language. Simple understanding: low-level languages are languages recognized by computers, and high-level languages are languages recognized by programmers.
So how do you switch from a high-level language to a low-level language? This process is actually compiling.
The process of translating source code programs written in high-level computer languages that are easy to write, read, and maintain into low-level machine language programs that can be interpreted and run by computers is compilation. The tool responsible for this process is called a compiler
Now we know what a compiler is and what a compiler is. Different languages have their own compilers. The compiler responsible for compiling in Java is a command: javac
After we write a HelloWorld.java file, we can use the javac HelloWorld.java command to generate a HelloWorld.class file. This class file is a file recognized by the JVM. Usually we think of this process as the compilation of the Java language. In fact, the class file is still not a language that the machine can recognize, because the machine can only recognize the machine language, and the JVM needs to convert this class file type bytecode into a machine language that the machine can recognize.
javac is a Java language compiler included in the JDK. The tool can compile source files with the extension .java into bytecodes with the extension .class that can run in the Java virtual machine.
What is decompilation?
The process of decompiling is just the opposite of compiling, that is, restoring the compiled programming language to an uncompiled state, that is, finding the source code of the programming language. Is to translate the language that the machine understands into a language that the programmer can understand. Decompilation in the Java language generally refers to converting a class file into a java file.
With decompilation tools, we can do many things. The main function is that with decompilation tools, we can understand the bytecode generated by the Java compiler. For example, we can gain insight into the principles behind Java's syntactic sugar.
Java commonly used decompilation tools
This article mainly introduces 4 Java decompilation tools: javap, jad and cfr, and visual decompilation tool JD-GUI.Or you can use online tool wesite - Java Decompiler Online.
What is Java Decompiler Online?
Java Decompiler Online is an online tool for decompiling class files to java source files which supports .class, .jar, .zip and other file formats. It's the best online tool to decompile java code quickly and intelligently.
3 Steps to Decompiler Java Class File
Step 1: Choose Java Class File
Drag the specified java class file to the upper area or click the above button to select the file, enter the verification code and confirm to upload the file.
Step 2: Waiting for Decompilation
Java class file will be decompiled after the file is uploaded. Please wait patiently if the file is too large.
Step 3: Download The Decompiled Java Source Code File
Open the file in the corresponding folder, and click the download button in the upper right corner to download.
By the way, please contact us if you have any question. Don't miss to share on facebook etc.
转载,请保留原文地址,谢谢 ~
How to Convert a Class File to a Java File?的更多相关文章
- Java File 类的使用方法详解
Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对Java File文件操作类进行详细地分析,并将File类中的常用方法进行简单介绍,有需要的Java开发者可以看 ...
- Java File 类的使用方法详解(转)
转自:http://www.codeceo.com/article/java-file-class.html Java File类的功能非常强大,利用Java基本上可以对文件进行所有的操作.本文将对J ...
- Java——File类成员方法
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- Java File类方法使用详解
Java File类的功能非常强大,利用java基本上可以对文件进行所有操作.文本将对Java File 文件操作的类详细的分析,并将File类中的常用方法进行简单介绍. 构造函数 public cl ...
- Sound (audio file) player in java - working source code example
转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/sound-audio-file-player-in-java-working.html ...
- IO:File类(java.io.File)
public class File extends Object implements Serializable, Comparable<File> 构造方法: public File(S ...
- 转:Java.file
类 java.io.File 的使用 使用 File 的软件包 java.awt 包含用于创建用户界面和绘制图形图像的所有类. java.io 通过数据流.序列化和文件系统提供系统输入和输出. jav ...
- java file类的常用方法和属性
1 常用方法 a.createNewFile方法 public boolean createNewFile() throws IOException 该方法的作用是创建指定的文件.该方法只 ...
- Java File创建新目录和文件
创建目录 当不存在目录aa文件夹时: File file1=new File("/aa"); Boolean aa=file.mkdir();// true File file1= ...
随机推荐
- 微信小程序----日期时间选择器(自定义精确到分秒或时段)
声明 bug:由于此篇博客是在bindcolumnchange事件中做的值的改变处理,因此会出现当你选择时,没有点击确定,直接取消返回后,会发现选择框的值依然改变.造成原因:这一点就是由于在bindc ...
- Vue中的nextTick()浅析
引言 在开发过程中,我们经常遇到这样的问题:我明明已经更新了数据,为什么当我获取某个节点的数据时,却还是更新前的数据? 一,浅析 为什么会这样呢?带着这个疑问先往下看. 先看一个小的例子: <d ...
- Go 每日一库之 viper
简介 上一篇文章介绍 cobra 的时候提到了 viper,今天我们就来介绍一下这个库. viper 是一个配置解决方案,拥有丰富的特性: 支持 JSON/TOML/YAML/HCL/envfile/ ...
- DSSA特定领域软件体系结构
一.何为DSSA 特定领域软件架构(Domain Specific Software Architecture,DSSA)是一种有效实现特定领域软件重用的手段.简单地说,DSSA就是在一个特定应用领域 ...
- umake ide -h
umake ide -husage: umake ide [-h] {netbeans,idea,clion,eclipse,atom,idea-ultimate,ec ...
- vijos 小胖守皇宫
点击打开题目 树形DP 显然会想到某个点放或不放守卫来定义状态,但在不放的情况下,需要分类讨论是父亲放还是一个儿子放,于是定义以下状态: f[root][0]表示自己不放,父亲也不放 f[root][ ...
- Dynamics CRM 快速获取custom entity
我们可以使用Command来实现快速获取custom entity的值. 创建cmd 并且在nuget中引用 CRMSDK 复制下面的代码. userName 为登陆CRM的email passwo ...
- ElasticSearch系列专栏
最近我们公司因业务发展较快,不少服务遇到了一些瓶颈,影响最大的就是数据量的暴增带来的搜索效率的问题.虽然建立索引以及利用好缓存可以有效地缓解该问题,但是随着业务的发展,业务的复杂度也逐渐提升,原有的技 ...
- CUDA 计算pi (π)
通过简单的程序设计熟练CUDA的使用步骤 下面是cuda代码及相关注释 #include <stdio.h> #include <iostream> #include < ...
- 工作流Activity框架入门(一)
Activity工作流入门 1. 工作流概念 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某 ...