Linux入門常識java
// Linux OS;
// 文件系統;
// Linux 至關於只有一個C:\ 的Windows系統,省略了盤符C;
// Linux 文件系統的根目錄只有一個,"\";
// "\"中的selinux至關於C:\中的"Windows"是操做系統的安裝文件夾;
// media 或者 mnt 是用於存儲掛載點的文件夾;
// Soft01 叫用戶主目錄,這個文件其實是跟用戶名同名的,在達內教學機上用戶名叫Soft01,在學校僅僅容許在該目錄CRUD;
// Linux 經常使用命令,記住命令與參數之間要有空格,並且命令分大小寫;
// pwd 輸出當前工做目錄,目錄即文件夾,目錄和文件就是文件夾和文件;
// mkdir 在當前工做目錄中建立子文件夾;
// rm 刪除文件命令;
// rm -rf 刪除文件夾或者刪除文件命令,在UNIX中,若是不用f則每次執行前會詢問,Linux則無此差異;
// touch 建立文件;
// ls 列出當前目錄中的文件夾;
// ls + 目錄名 列出制定目錄中的文件;
// clear 清屏;
// 絕對路徑與相對路徑,只要前面不是\開頭,都是相對路徑,相對路徑其實是去當前目錄下的子目錄,就是說它的位置依賴於當前所處的位置;
// cd 改變目錄; 從母目錄改到子目錄能夠,反過來不行;
// .. 返回當前目錄的上一層目錄, . 表示當前目錄,這兩個是特殊的相對目錄;
// ~ 表明用戶主目錄(home/soft01);
// 直接cd 返回用戶主目錄;
// 通常而言,WindowsOS 用於PC機,Linux OS 用於服務器,智能終端,嵌入式設備;
// Java 因爲主要用於服務器端的開發。所以Java開發的部署環境不少是Linux;linux
Java程序員
Java編譯及運行過程服務器
Java源程序.java文件經過編譯器的javac命令生成.class字節碼文件 這是編譯階段
然後,經過java命令啓動JVM,.class字節碼文件被JVM(JAVA虛擬機,它能夠實現跨平臺 e.g.JVM for Linux;JVM for Windows;)加載並運行,翻譯成能被OS識別的機器碼指令(0和1),而後OS執行機器碼指令 這是運行階段
不一樣的OS具備不一樣的機器碼指令系統,好比Window:你-----010101;Linux;你-----1010010;;所以須要安裝相應版本的JVM
1).HelloWorld.java
2).javac HelloWorld.java ------------javac命令生成HelloWorld.class文件
3).java HelloWorld -----經過java命令啓動JVM,.class字節碼文件被JVM,加載並運行,翻譯成能被OS識別的機器碼指令(0和1),而後OS執行機器碼指令輸出結果
4)HelloWorld --------- 運行結果
1),2)是編譯過程;3),4)是運行過程;框架
名詞解釋JVM、JRE、JDK
JVM:Java虛擬機,Java Virtual Machines
JRE:Java 運行環境,Java Runtime Environment
JDK:Java開發工具包,Java Development Kit
它們之間的關係:
JRE=JVM+java系統類庫;系統類庫即爲java提早封裝好的功能類,只需拿來直接使用便可,能夠大大的提升開發效率。
JDK=JRE+編寫Java程序所必須的編譯、運行等開發工具;開發工具如:用於編譯java程序的javac命令、用於啓動JVM運行java程序的java命令、用於生成文檔的javadoc命令以及用於打包的jar命令等等
運行java的最小單位是JRE,開發Java程序的最小單位是JDK;編輯器
Eclipse工具
正如上面所說開發Java程序的最小單位是JDK,JDK提供了不少命令,像編譯(javac)、運行(java)等等,若是咱們但願能使用這些命令,須要讓操做系統能夠找到這些命令文件所在的路徑,這個能夠經過配置PATH環境變量來實現。
PATH環境變量是一系列的目錄,在執行命令時,操做系統會依次在PATH環境變量中的每個目錄中查找該命令,找到就執行,找不到則提示錯誤。
配置好以後,如今能夠開始寫Java源程序了;
咱們在Linux控制檯打開.java源文件,經過vi文本編輯器(相似與Windows的txt文本編輯器)就能夠寫Java源程序的代碼,這就是用最簡單的編輯工具編寫源代碼,可是在真實的企業項目中,這種原始的開發方式會帶來大量繁瑣、重複、易錯的操做,極大的下降工做效益,也不利於項目總體管理,在真實的場景中,開發人員老是會藉助一些強大的「集成開發環境」(IDE,Integrated Development Environment )進行代碼的編寫、調試、測試、提交、重構等操做,例如:Eclipse。
打個可能不恰當的比喻,這就相似於咱們寫文本文件時通常不會用微軟自帶的txt輸入文本,而是用Word,WPS等軟件,它們就像寫java源代碼時不用vi編輯器寫,而是用Eclipse這個工具軟件來寫。
對於Java程序員有許多IDE環境能夠選擇, 它們是專爲程序員提供的應用軟件,這些軟件每每具有功能強大的圖形界面。在IDE的輔助下,程序員能夠更加高效的完成編譯、調試、提交、重構等工做。做爲一個合格的程序員應該對主流的IDE工具備較高的熟練度,但也要防止「過度依賴IDE」問題。
目前最主流的要數大名鼎鼎的Eclipse了。它是目前主流的IDE開發環境,是IBM斥資數千萬美圓打造的開源項目,現在幾乎統治了IDE市場。除了開源以外,Eclipse成功的最大緣由在於它是基於「插件」的特性。Eclipse自己是一個平臺框架,提供標準的服務,衆第三方廠商能夠經過開發插件擴展Eclipse的功能,相較於其餘功能相對固定的IDE,Eclipse更具備高度的靈活性。開發工具