国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

java程序入口main()方法淺析

YFan / 1270人閱讀

摘要:程序入口方法淺析方法的方法簽名方法簽名講解修飾符類由虛擬機調(diào)用,為了沒有限制可以自由的調(diào)用,所以采用修飾符。返回值主方法被調(diào)用,將返回值返回給沒有任何意義,因此該方法沒有返回值,所以使用。

java程序入口main()方法淺析 main()方法的方法簽名

public static void main(String[] args)

方法簽名講解

?public修飾符:java類由java虛擬機(JVM)調(diào)用,為了沒有限制可以自由的調(diào)用,所以采用public修飾符。
?static修飾符:JVM調(diào)用這個主方法時肯定不是先創(chuàng)建這個主類的對象,再通過對象來調(diào)用方法,而是直接通過該類來調(diào)用這個方法,因此需要使用static修飾符修飾這個類。
?void返回值:主方法被JVM調(diào)用,將返回值返回給JVM沒有任何意義,因此該方法沒有返回值,所以使用void。
?擴展:
?public:該修飾符表明該數(shù)據(jù)成員、成員函數(shù)是對所有用戶開放的,所有用戶都可以直接進(jìn)行調(diào)用。
?static:該修飾符表示靜態(tài)的意思,簡單理解被static修飾符修飾的成員都屬于類本身,而不屬于類的某個實例,靜態(tài)成員不能能直接訪問非靜態(tài)成員。
?void:使用void說明沒有返回值。

這時會發(fā)現(xiàn)我沒有說字符串?dāng)?shù)組形參內(nèi)容,這里我們首先知道,誰調(diào)用方法,誰去傳遞形參,所以args形參由JVM負(fù)責(zé)賦值,JVM給args賦了什么值?

我們先看一段程序:

public class args {
    public static void main(String[] args){
        for (String s:args) {
            System.out.println(s);
        }
        System.out.println("-------------------" );
        System.out.println(args.length);
    }
}

輸出:

-------------------
0

?這里輸出數(shù)組長度為0,這是因為,程序沒有給args設(shè)定參數(shù)值,所以JVM也就不知道args數(shù)組中的元素,然后JVM給args數(shù)組設(shè)置為一個長度為0的數(shù)組。
?如果我們使用dos命令運行程序時,在類名后加上一個或者多個字符串(以空格隔開),這時JVM會依次將這些數(shù)值賦給args數(shù)組。
例如:

λ java lzjarg lzj why
lzj
why
-------------------
2

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/75527.html

相關(guān)文章

  • java學(xué)習(xí)(四) —— 內(nèi)存分配淺析

    摘要:內(nèi)存分配解析四方法執(zhí)行完畢,立即釋放局部變量所占用的棧空間。內(nèi)存分配解析五調(diào)用對象的方法,以實例為參數(shù)。堆和棧的小結(jié)以上就是程序運行時內(nèi)存分配的大致情況。 前言 java中有很多類型的變量、靜態(tài)變量、全局變量及對象等,這些變量在java運行的時候到底是如何分配內(nèi)存的呢?接下來有必要對此進(jìn)行一些探究。 基本知識概念: (1)寄存器:最快的存儲區(qū), 由編譯器根據(jù)需求進(jìn)行分配,我們在程序...

    henry14 評論0 收藏0
  • webpack4.x 模塊化淺析-CommonJS

    摘要:先看下官方文檔中對模塊的描述在模塊化編程中,開發(fā)者將程序分解成離散功能塊,并稱之為模塊。每個模塊具有比完整程序更小的接觸面,使得校驗調(diào)試測試輕而易舉。 先看下webpack官方文檔中對模塊的描述: 在模塊化編程中,開發(fā)者將程序分解成離散功能塊(discrete chunks of functionality),并稱之為模塊。每個模塊具有比完整程序更小的接觸面,使得校驗、調(diào)試、測試輕而易...

    alphahans 評論0 收藏0
  • jar命令淺析

    摘要:命令淺析文件的全稱是,意思是檔案文件,通常文件是一種壓縮文件,并且與常見的文件兼容,兩者的區(qū)別便是擁有清單文件,這個文件是生成文件時自動創(chuàng)建的。首先輸入命令,系統(tǒng)會自動提示命令的用法。 jar命令淺析 ?JAR文件的全稱是Java Archive File,意思是java檔案文件,通常JAR文件是一種壓縮文件,并且與常見的Zip文件兼容,兩者的區(qū)別便是JAR擁有清單文件 (META-I...

    wmui 評論0 收藏0
  • 淺析Java泛型

    摘要:泛型類在類的申明時指定參數(shù),即構(gòu)成了泛型類。換句話說,泛型類可以看成普通類的工廠。的作用就是指明泛型的具體類型,而類型的變量,可以用來創(chuàng)建泛型類的對象。只有聲明了的方法才是泛型方法,泛型類中的使用了泛型的成員方法并不是泛型方法。 什么是泛型? 泛型是JDK 1.5的一項新特性,它的本質(zhì)是參數(shù)化類型(Parameterized Type)的應(yīng)用,也就是說所操作的數(shù)據(jù)類型被指定為一個參數(shù),...

    godiscoder 評論0 收藏0
  • pyspark底層淺析

    摘要:底層淺析簡介是官方提供的接口,同時也是中的一個程序。這里一提,對于大部分機器學(xué)習(xí)算法,你都會看到模塊與模塊都提供了接口,它們的區(qū)別在于模塊接受格式的數(shù)據(jù)而模塊接受格式的數(shù)據(jù)。 pyspark底層淺析 pyspark簡介 pyspark是Spark官方提供的API接口,同時pyspark也是Spark中的一個程序。 在terminal中輸入pyspark指令,可以打開python的she...

    FrozenMap 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<