欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java教程之java程序編譯運(yùn)行圖解(java程序運(yùn)行)

 更新時間:2014年03月10日 16:34:22   作者:  
最近重新復(fù)習(xí)了一下java基礎(chǔ),在使用javap的過程中遇到了一些問題,這里便講講對于一個類文件如何編譯、運(yùn)行、反編譯的。也讓自己加深一下印象

首先我們在桌面,開始->運(yùn)行->鍵入cmd 回車,進(jìn)入windows命令行。進(jìn)入如圖所示的畫面:

可知,當(dāng)前默認(rèn)目錄為C盤Users文件夾下的Administrator文件夾。一般而言,我們習(xí)慣改變當(dāng)前目錄。由于windows有磁盤分區(qū),若要跳到其他磁盤,例如E盤,有幾種方法:

1、輸入命令: pushd 路徑(此命令可將當(dāng)前目錄設(shè)為所希望的任一個已存在的路徑)

2、輸入命令: e:  轉(zhuǎn)移到e盤,然后再輸入 cd 轉(zhuǎn)移到所希望的已知路徑。

如圖:

希望在windows命令行下使用javac、java、javap等命令,那么當(dāng)前電腦必須安裝了jdk,并且將jdk的bin目錄添加到環(huán)境變量path下了。這個不用多說。那么讓我們看一下如何使用javac、java、javap吧。

一、javac

javac是用來編譯.java文件的。命令行下直接輸入javac可以看到大量提示信息,提示javac命令的用法,我只知道常用的。

javac -d destdir srcFile

其中:1、-d destdir是用來指定存放編譯生成的.class文件的路徑。(若此選項(xiàng)省略,那么默認(rèn)在當(dāng)前目錄下生成.class文件,并且沒有生成包文件夾;當(dāng)前目錄可以用“.”來表示,即:javac -d . srcFile )

注意:添加-d選項(xiàng)除了可以指定編譯生成的.class文件的路徑外,最大的區(qū)別是可以將源文件首行的package關(guān)鍵字下的包名在當(dāng)前路徑下生成文件夾。

2、srcFile是源文件.java文件的路徑。

例如:有這樣一個簡單的java類,路徑為E:\test\JavacTest.java:

復(fù)制代碼 代碼如下:

package com.stopTalking.test;      public class JavacTest {

public static void main(String[] args) {      
byte a = 5;       
short b = 6;       
System.out.println("JavacTest [a=" + a + ", b=" + b +  "]");       
}       
}



當(dāng)前路徑下,輸入 javac JavacTest.java ,便在當(dāng)前路徑下生成了一個JavacTest.class的文件,如圖:

注意:JavacTest.java是一個首行標(biāo)注了package的java文件,而此時它在硬盤上的目錄并未對應(yīng)它的包名,所以,使用java com.stopTalking.test.JavacTest運(yùn)行時是無法找到該java的。

若輸入,javac –d . JavacTest.java ,那么生成的JavacTest.class便在當(dāng)前目錄下生成的包文件中了,如圖:

二、java

此時,我們希望運(yùn)行該類,在大部分的教材中,使用java JavacTest便可直接運(yùn)行,可是我們發(fā)現(xiàn)出現(xiàn)這樣的錯誤:

這是因?yàn)?,大部分的教材使用的類是默認(rèn)包名的,即源文件的第一行是沒有package指定包名的。使用一個類,我們知道,是需要使用它的全限定類名的。

所以,我們在命令行輸入:java com/stopTalking/test/JavacTest,便可看到正確的結(jié)果了:

總結(jié):使用簡單的java命令運(yùn)行一個.class文件,不僅需要使用該類的全限定類名,而且需要在當(dāng)前路徑下有該類的包層次文件夾。這必須要求編譯時使用-d選項(xiàng)。否則需要自己來建立包層次文件夾。

三、javap

javap主要用于幫助開發(fā)者深入了解Java編譯器的機(jī)制,主要選項(xiàng)有:

-c 分解方法代碼,即顯示每個方法具體的字節(jié)碼

-public | protected | package | private 用于指定顯示哪種級別的類成員

-verbose 指定顯示更進(jìn)一步的詳細(xì)信息

輸入 javap -c com/stopTalking/test/JavacTest,顯示如圖:

相關(guān)文章

  • SpringBoot中的自定義Starter解讀

    SpringBoot中的自定義Starter解讀

    這篇文章主要介紹了SpringBoot中的自定義Starter解讀,啟動器模塊其實(shí)是一個空的jar文件,里面沒有什么類、接口,僅僅是提供輔助性依賴管理,這些依賴可能用于自動裝配或者其他類庫,需要的朋友可以參考下
    2023-12-12
  • java構(gòu)造方法的作用總結(jié)

    java構(gòu)造方法的作用總結(jié)

    在本篇文章里小編給大家整理了關(guān)于java構(gòu)造方法的相關(guān)知識點(diǎn)以及實(shí)例代碼,有需要的朋友們可以學(xué)習(xí)下。
    2019-07-07
  • Spring Boot 項(xiàng)目設(shè)置網(wǎng)站圖標(biāo)的方法

    Spring Boot 項(xiàng)目設(shè)置網(wǎng)站圖標(biāo)的方法

    這篇文章主要介紹了Spring Boot 項(xiàng)目設(shè)置網(wǎng)站圖標(biāo)的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • SpringMVC中RequestMapping注解(作用、出現(xiàn)的位置、屬性)

    SpringMVC中RequestMapping注解(作用、出現(xiàn)的位置、屬性)

    這篇文章主要介紹了SpringMVC中RequestMapping注解(作用、出現(xiàn)的位置、屬性),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • JAVA Iterator接口與增強(qiáng)for循環(huán)的實(shí)現(xiàn)

    JAVA Iterator接口與增強(qiáng)for循環(huán)的實(shí)現(xiàn)

    這篇文章主要介紹了JAVA Iterator接口與增強(qiáng)for循環(huán)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 解釋為什么Java中“1000==1000”為false而”100==100“為true

    解釋為什么Java中“1000==1000”為false而”100==100“為true

    在日常編程中,我們經(jīng)常遇到一些看似簡單卻隱藏著復(fù)雜邏輯的問題,這篇文章主要介紹了解釋為什么Java中“1000==1000”為false而”100==100“為true,需要的朋友可以參考下
    2024-01-01
  • Jboss Marshalling服務(wù)端無法接受消息

    Jboss Marshalling服務(wù)端無法接受消息

    這篇文章主要介紹了Jboss Marshalling服務(wù)端無法接受消息,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • Mybatis配置之properties和settings標(biāo)簽的用法

    Mybatis配置之properties和settings標(biāo)簽的用法

    這篇文章主要介紹了Mybatis配置之properties和settings標(biāo)簽的用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java手動創(chuàng)建線程池代碼實(shí)例

    Java手動創(chuàng)建線程池代碼實(shí)例

    這篇文章主要介紹了Java手動創(chuàng)建線程池代碼實(shí)例,FixedThreadPool或者SingleThreadPool,允許的請求隊(duì)列長度為Integer.MAX_VALUE,可能會堆積大量的請求,從而導(dǎo)致OOM,需要的朋友可以參考下
    2023-12-12
  • 詳解SpringBoot中關(guān)于%2e的Trick

    詳解SpringBoot中關(guān)于%2e的Trick

    這篇文章主要介紹了SpringBoot中關(guān)于%2e的Trick,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04

最新評論