第一個JAVA程序:java
public class HelloWorld { /* 第一個Java程序 * 它將打印字符串 Hello World */ public static void main(String []args) { System.out.println("Hello World"); // 打印 Hello World } }
你將會在窗口看到 Hello Worldc++
初學者對這個程序的理解:編輯器
1:public class HelloWorld函數
在Java 程序中,java文件會被編譯成帶有.class拓展名的字節代碼文件。.class文件自身可被視做程序。在第一行中,定義了一個新的HelloWorld類。可用於使用關鍵字class後跟類的名稱來建立類編碼
2:public static void main(String []args)spa
這一行定義了一個方法(或者能夠叫一個函數),這是HelloWorld類的一個成員,稱爲main(主函數)。在Java中main是一個很是特殊的函數,特別是對於應用程序來講,main是其Java運行時的引擎(JRE)或者java.exe的入口點。之後鍵入 java HelloWorld 這條命令時,就是告訴java運行時,引擎打開類文件HelloWorld.class並處理main函數。操作系統
Public:命令行
將main函數聲明爲公有函數,便於調用,除了public以外還有 private 和protected 兩個修飾符。code
Static:blog
關鍵字static告訴編譯器有且僅有一個方法(或變量)是該類全部實例公用的。例如,即便HelloWorld類有100個不一樣的副本在運行,也只有一個main函數。類中的main函數是static靜態的。
Void:
返回值類型
(String []args)或(String args[])://必需要加
函數名後面圓括號內包含的是傳遞給函數的參數列表。
例如輸入命令: java HelloWorld one two three four
命令行將向函數傳遞四個項目:one,two,three,four。
Args[0] = 」one」
Args[1] = 」two」
Args[2] = 」three」
Args[3] = 」four」
3: System.out.println("Hello World"); // 打印 Hello World
System:
System其實是java語言所提供的一個類。這個類十分重要,能夠用來訪問標準輸入設備(鍵盤),標準輸出設備(顯示器)以及標準錯誤輸出設備(一般是顯示器)。
System類有一組公共屬性或數據成員,以及一組公共方法或函數,可在程序中訪問這些屬性或方法。(相似於c++中的庫函數)在類名system後加上一個句點(.)而後加上方法或屬性名稱,就能夠訪問他們。
Out:
Out變量表示標準輸出設備,一般是顯示器,注意out變量的類型是PrintStream.
PrintStream類中包含一組print,println和write函數,這些函數知道如何打印不一樣類型的變量。
Println:
用於輸出,功能和print差很少
最終結果:system.out.println(「HelloWorld」)
在CMD中運行此程序可能會遇到的問題:
1.出現編碼GBK的不可映射字符:
因爲程序中有漢字,漢字的編碼和英文字母不一樣致使出錯,所以能夠刪掉漢字來解決此問題,或者使用編譯器,改一下編碼,將編碼轉換爲「使用ANSI格式編碼」便可。
錯誤: CMD 編譯 Java 源文件時出現的編碼 GBK 的不可映射字符的錯誤。
辦法:使用 javac -encoding UTF-8 .java 指定編碼形式。
緣由:因爲 JDK 是國際版的,在編譯的時候,若是咱們沒有用 -encoding 參數指定 JAVA 源程序的編碼格式,則 java.exe 首先得到咱們才作系統默認採用的編碼格式,也即在編譯 JAVA 程序時,若咱們不指定源程序文件的編碼格式,JDK 首先得到操做系統的 file.encoding 參數(它保存的就是操做系統默認的編碼格式,如 win2k,他的值爲 GBK),而後 JDK 就把咱們的 JAVA 源程序從 file.encoding 編碼格式轉化爲 JAVA 內部默認的 UNICODE 格式放到內存中。以後,javac 把轉換後的 UNICODE 格式的文件進行編譯成 class 類文件,此時 .class 文件是 UNICODE 編碼的,它暫放在內存中,緊接着,JDK 將此以 UNICODE 編碼編譯後的 .class 文件保存到操做系統中造成咱們見到的 .class 文件。但咱們不加設置就編譯時,至關於使用了參數: javac -encoding gbk xx.java,就會出現不兼容的狀況。
2.出現jdk和jre版本不符合(大可能是由於以前安裝過java,因爲java沒有升級致使的版本不符合):
能夠直接去下載最新版的java,就能夠解決該問題