win10下对.java源文件进行编译和反编译的步骤

1、先写好代码,如下找了个示例代码,文件名是Mutex.java:

package com.huangshiyi.concurrent.cha04;

import java.util.concurrent.TimeUnit;

public class Mutex {
    private final static Object MUTEX = new Object();

    public void accessResource()  {
        synchronized (MUTEX) { 
            try {
                TimeUnit.MINUTES.sleep(10);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }

    }

    public static void main(String[] args) {


        final Mutex myMutex = new Mutex();

        for (int i = 0; i < 5; i++) {
            new Thread(myMutex::accessResource).start();
        }

    }

}

2、如下图所示在win10下的话,在项目的文件包路径com.huangshiyi.concurrent.cha04所在位置之前打开PowerShell,例如上述Mutex.java在电脑硬盘上的绝对路径是

D:LearnForWorkJavaHighConcurrencyProgrammingInDetailsrcmainjavacomhuangshiyiconcurrentcha04Mutex.java

所以在D:LearnForWorkJavaHighConcurrencyProgrammingInDetailsrcmainjava这个地方打开PowerShell就行。然后编译命令是javac + 相对路径,如下图所示:

win10下对.java源文件进行编译和反编译的步骤

如果运行上图所示命令没有报错的话则表明编译成功,Java编译器很快会在Mutex.java文件同一个目录下生成所编译源文件名.class文件,在本例中即是Mutex.class。

3.对所生成的Mutex.class文件进行反编译,反编译命令是javap -c + 文件相对路径,如下图所示:

win10下对.java源文件进行编译和反编译的步骤

若反编译成功,PowerShell界面应如下所示:

win10下对.java源文件进行编译和反编译的步骤

win10下对.java源文件进行编译和反编译的步骤

© 版权声明

相关文章

暂无评论

none
暂无评论...