最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

實(shí)例分析Java中public static void main(String args[])是什么意思

 更新時(shí)間:2015年12月09日 15:10:41   作者:NW_KNIFE  
這篇文章主要介紹了實(shí)例分析Java中public static void main(String args[])的意義,詳細(xì)分析了Java主函數(shù)main關(guān)鍵字聲明的具體含義和用法,需要的朋友可以參考下

本文實(shí)例講述了Java中public static void main(String args[])的來龍去脈。分享給大家供大家參考,具體如下:

public static void main(String[] args)

這絕對(duì)不是憑空想出來的,也不是沒有道理的死規(guī)定,而是java程序執(zhí)行的需要。

jvm在試圖運(yùn)行一個(gè)類之前,先檢查該類是否包含一個(gè)特殊方法。這個(gè)方法必須是公有的,以便在任何位置都能訪問得到。這個(gè)方法必須是static的,因?yàn)檫@個(gè)方法不能依賴任何該類的實(shí)例即可運(yùn)行,而非static的方法,在運(yùn)行之前要先創(chuàng)建該類的實(shí)例對(duì)象。

這個(gè)方法沒有返回值。和C/C++程序不一樣,java的程序默認(rèn)都以常態(tài)結(jié)束,所以main不返回int。如果要以非常態(tài)結(jié)束程序,可以用System.exit(1)。

這個(gè)方法必須可以接受數(shù)目不定的String類型的參數(shù),因?yàn)檫\(yùn)行者可能要附加運(yùn)行參數(shù)。如java HelloWorld jack 100,這里的jack和100就是運(yùn)行參數(shù)。

為什么是String呢?因?yàn)镾tring具有普遍性。任何字面形式都可以解釋成String,而其他類型則不然(如jack就不能解釋成整數(shù)或浮點(diǎn)數(shù)),所以用String來存儲(chǔ)參數(shù)最合適。而因?yàn)閰?shù)數(shù)目不限一個(gè),所以用了數(shù)組,即String[]。在Java 1.5以后,還可以寫成String...,表示數(shù)目不定。

至于參數(shù)的變量名可以任意,只要保證在方法內(nèi)部按該變量名來獲得參數(shù)就行了,從變量的作用角度來說,叫arguments或args當(dāng)然是最合適的。

至于這個(gè)方法的名字為什么一定是main,有歷史原因,因?yàn)樽钤绲腃以main函數(shù)作為程序入口,java沿用了這個(gè)歷史傳統(tǒng)。

下面我們以一個(gè)例子一探究竟:

package test;
public class MainTest {
  public static void main(String[] args)
  {
    for (int x=0; x<args.length; x++)
    {
      System.out.println(args[x]);
    }
  }
  public static void sysInfo(){
    System.out.println("call sysInfo()");
  }
}
public class MainDemo {
  /*
  public static void main(String[] args)
  public:權(quán)限修飾符,權(quán)限最大。
  static:隨著MianDemo類的加載而加載,消失而消失。
  void: 沒有返回值
  main: 函數(shù)名,jvm識(shí)別的特殊函數(shù)名
  (String[] args):定義了一個(gè)字符串?dāng)?shù)組參數(shù)
  */
  public static void main(String... args) 
  {
    String[] arr = new String[]{"zhang","li","wang","zhao"};
    MainTest.main(arr);
    MainTest.sysInfo();
  }
  /*
  總結(jié):
  1、main()函數(shù)是被jvm調(diào)用,jvm給main()傳了一個(gè)長(zhǎng)度為0的字符串的數(shù)組,也就是new String[0]
  2、可以通過類名.main()進(jìn)行傳值操作,因?yàn)閙ain()方法是static的。
  */
}

運(yùn)行結(jié)果:

希望本文所述對(duì)大家Java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Java中如何用Stream分組并求各組數(shù)量

    Java中如何用Stream分組并求各組數(shù)量

    這篇文章主要給大家介紹了關(guān)于Java中如何用Stream分組并求各組數(shù)量的相關(guān)資料,文中通過實(shí)例代碼,對(duì)大家學(xué)習(xí)或者Java具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • springboot引入druid解析sql的過程

    springboot引入druid解析sql的過程

    在開發(fā)中,有時(shí)我們可能會(huì)需要獲取SQL中的表名,那么因?yàn)椴煌臄?shù)據(jù)源類型SQL會(huì)存在部分差異,那么我們就可以使用alibaba 的druid包實(shí)現(xiàn)不同的數(shù)據(jù)源類型的sql解析,需要的朋友可以參考下
    2023-08-08
  • Java 無參數(shù)構(gòu)造函數(shù)的應(yīng)用

    Java 無參數(shù)構(gòu)造函數(shù)的應(yīng)用

    本篇文章主要介紹了Java 無參數(shù)構(gòu)造函數(shù)的應(yīng)用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • PowerJob的ProcessorLoader工作流程源碼解讀

    PowerJob的ProcessorLoader工作流程源碼解讀

    這篇文章主要為大家介紹了PowerJob的ProcessorLoader工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Java中的@Repeatable注解使用詳解

    Java中的@Repeatable注解使用詳解

    這篇文章主要介紹了Java中的@Repeatable注解使用詳解,@Repeatable注解是java8為了解決同一個(gè)注解不能重復(fù)在同一類/方法/屬性上使用的問題,本文提供了解決思路和部分實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2024-02-02
  • 在IntelliJ IDEA中多線程并發(fā)代碼的調(diào)試方法詳解

    在IntelliJ IDEA中多線程并發(fā)代碼的調(diào)試方法詳解

    這篇文章主要介紹了在IntelliJ IDEA中多線程并發(fā)代碼的調(diào)試方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java Synchronized鎖升級(jí)原理及過程剖析

    Java Synchronized鎖升級(jí)原理及過程剖析

    這篇文章主要為大家詳細(xì)介紹一下Java中Synchronized鎖升級(jí)原理及過程,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)學(xué)習(xí)
    2022-08-08
  • Spring MVC的文件上傳和下載以及攔截器的使用實(shí)例

    Spring MVC的文件上傳和下載以及攔截器的使用實(shí)例

    這篇文章主要介紹了Spring MVC的文件上傳和下載以及攔截器的使用實(shí)例,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-08-08
  • Spring的@Value注入復(fù)雜類型(通過@value注入自定義類型)

    Spring的@Value注入復(fù)雜類型(通過@value注入自定義類型)

    Spring的@Value可以注入復(fù)雜類型嗎?今天教你通過@value注入自定義類型。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot中6種API版本控制策略小結(jié)

    SpringBoot中6種API版本控制策略小結(jié)

    API版本控制是確保系統(tǒng)平穩(wěn)演進(jìn)的關(guān)鍵策略,這篇文章主要為大家詳細(xì)介紹了SpringBoot中6種API版本控制策略,大家可以根據(jù)需要自行選擇
    2025-04-04

最新評(píng)論

东城区| 和龙市| 江安县| 玉林市| 泉州市| 德清县| 庐江县| 英吉沙县| 吴桥县| 普定县| 利辛县| 张掖市| 陆河县| 离岛区| 泰宁县| 阳东县| 淮南市| 新邵县| 安塞县| 新晃| 阜阳市| 边坝县| 滦南县| 浠水县| 贞丰县| 曲松县| 台东县| 澎湖县| 星座| 凤阳县| 沾化县| 兴义市| 夏河县| 周至县| 孟连| 元江| 博客| 尼勒克县| 平泉县| 五峰| 翁牛特旗|