1. java程序的编译命令_Java中javac、java、javap使用详解(java编译命令)

1. java程序的编译命令_Java中javac、java、javap使用详解(java编译命令)最近一直在复习 java 基础 这里就记录对于一个类文件如何编译 运行 反编译的 让自己加深一下印象 首先我们来写一个简单的 JavaTest 方法 大致如下 packagecom cuiyongzhi io publicclassJ publicstatic String args TODOAuto generatedmet

最近一直在复习java基础,这里就记录对于一个类文件如何编译、运行、反编译的,让自己加深一下印象!首先我们来写一个简单的JavaTest方法,大致如下:package com.cuiyongzhi.io;

public class JavaTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

int i=0,j=1;

int n=i+j;

System.out.println(“n================”+n);

}

}

然后将我们的这个JavaTest.java放入到c盘根目录下,后面我们用javac、java、javap进一步的去了解和运行这个方法的执行步骤!

①javac——负责.java文件的编译

首先当我们在cmd中输入javac的时候我们可以看到很多的提示信息如下,但是我这里说的只是对.java文件的编译命令!

0a4df2d9a4780d889fe04abbf3b1d96d.png

javac对.java文件的编译命令格式如下:javac -d destdir srcFile-d destdir是用来指定存放编译生成的.class文件的路径。(若此选项省略,那么默认在当前目录下生成.class文件,并且没有生成包文件夹;当前目录可以用“.”来表示,即:javac -d . srcFile;添加-d选项除了可以指定编译生成的.class文件的路径外,最大的区别是可以将源文件首行的package关键字下的包名在当前路径下生成文件夹)

srcFile是源文件.java文件的路径

之前我们是将JavaTest.java放在c盘根目录下,而且我也希望我们生成的class文件也是放入在C盘中,所以我们的编译命令可以如下:javac -d C:\\ C:\\JavaTest.java

最后执行之后我们可以看到如下结果:

7715ca047177121bd32507c9ad8d2ce6.png

②前面第一步我们已经通过javac编译过java文件了,并且编译之后class的目录在C:\com\cuiyongzhi\io,在这里我们可以通过java运行class结果如下:

1e76ff7d3d6a0ec3af7aca20f6ea51fd.png

③javap——可以用于帮助开发者深入了解Java编译器的机制-c 分解方法代码,即显示每个方法具体的字节码

-public | protected | package | private 用于指定显示哪种级别的类成员

-verbose 指定显示更进一步的详细信息

我们可以查看我们这个编译的Class的相关信息,只需要输入如下命令:javap -c com/cuiyongzhi/io/JavaTest

59c294e7cab476c0a3587c12e9cc5b25.png

简单的对javac、java、javap的命令讲解就到这里了,感谢你的翻阅,如有疑问可以留言交流讨论!

除非注明,否则文章均由 崔用志博客 整理发布,欢迎转载。

如果喜欢,可以点此订阅本站

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

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

(0)
上一篇 2026年3月18日 上午7:56
下一篇 2026年3月18日 上午7:56


相关推荐

  • C语言链表操作详解

    C语言链表操作详解为什么要使用链表在未学习链表时 我们常用的存储数据的方式无非就是数组 使用数组存储数据的好处就是查询快 但是它的弊端也很明显 使用前需声明数组的长度 一旦声明长度就不能更改 插入和删除操作需要移动大量的数组元素 效率慢 只能存储一种类型的数据 而链表则可以实现以上这些数组所不具备的功能 此时引入了结构体来实现创建链表的操作 链表的特点 n 个节点离散分配 每一个节

    2026年3月19日
    1
  • 基于php的微信公众平台开发入门实例

    基于php的微信公众平台开发入门实例作者 zbtree 这篇文章主要介绍了基于 php 的微信公众平台开发入门 实例分析了微信公众平台从注册 配置方法及接口代码的实现技巧 深入浅出 希望可以帮助大家快速入门 CSDN 学院开设了系列直播 微信公众号开发实战 即将直播 每周 1 小时 共计三周 独家体系 全程直播互动答疑 源码可以直接共享哦 查看 点我微信公众平台提供的接口很简单 先看看消息交互流程 说的通俗一些 用户使用微

    2025年11月21日
    4
  • weakHashMap用法

    weakHashMap用法WeakHashMap,此种Map的特点是:当除了自身有对key的引用外,此key没有其他引用那么此map会自动丢弃此值,举例来说:声明了两个Map对象,一个是HashMap,一个是WeakHashMap,同时向两个map中放入a、b两个对象,当HashMap remove掉a并且将a、b都指向null时,WeakHashMap中的a将自动被回收掉。出现这个状况的原因是

    2022年5月31日
    47
  • Vsftpd服务器企业实战

    Vsftpd服务器企业实战

    2021年6月12日
    117
  • java实现手机短信验证全过程[通俗易懂]

    java实现手机短信验证全过程[通俗易懂]手机短信验证现在在各种系统可以说都是用的非常普遍的,这个可能是方便和安全性的考虑,所以才广泛的使用,这篇文章就以一个短信接口的实例,来讲解一下怎么使用短信接口。一、前期工作首先,我们需要选定一家短信接口的公司,然后去注册和获取一系列的ID等,然后就可以正式的创建我们的短信业务了。下面以某个短信接口为例讲解。1.1、注册进入这个网址注册一个账户1.2、获取到ACCOUNT…

    2022年7月21日
    18
  • 蓝桥杯单片机必备知识—–(10)DS1302时钟

    蓝桥杯单片机必备知识—–(10)DS1302时钟

    2021年4月13日
    201

发表回复

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

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