JavaSE基礎點一 Java概述 什麼是Java? Java是一門程式設計語言,在說Java語言前先談一下什麼是電腦語言。電腦語言是人與電腦之間通信的語言,它主要由一些指令組成,這些指令包括數字、符號和語法等內容,人可以通過這些指令來指揮電腦進行各種工作。 電腦語言的分類有很多,大體分為 ...
JavaSE基礎點一
Java概述
什麼是Java?
Java是一門程式設計語言,在說Java語言前先談一下什麼是電腦語言。電腦語言是人與電腦之間通信的語言,它主要由一些指令組成,這些指令包括數字、符號和語法等內容,人可以通過這些指令來指揮電腦進行各種工作。
電腦語言的分類有很多,大體分為機器語言、彙編語言、高級語言三類。電腦能識別認識的只有機器語言,機器語言由0、1組成,表示信號的開和關。也叫二進位。因為不便於人記憶和識別,目前通用的編程語言是彙編語言跟高級語言。彙編語言採用了英文縮寫的標識符,容易識別和記憶;而高級語言採用了接近於人類的自然語言進行編程,進一步簡化了程式編寫的過程,所以高級語言是目前絕大多數編程人採用的語言。
Java語言是一種高級電腦語言,由Sun公司於1995年5月推出的一種可以編寫跨平臺應用軟體、完全面向對象的程式設計語言。Java語言有簡單易用、安全可靠的特性,主要面向Internet編程,問世以來,與之相關的技術和應用發展的非常快。在電腦、行動電話、家用電器等領域中,Java技術無處不在。為了使軟體開發人員、服務提供商和設備生產商可以針對特定的市場進行開發,Sun公司將Java劃分為三個技術平臺,分別是JavaSE、JavaEE、JavaME。
JavaSE標準版
是為開發普通桌面和商務應用程式提供的解決方案。JavaSE是三個平臺中最核心的部分,JavaEE和JavaME都是從JavaSE的基礎上發展而來的,JavaSE平臺中包括了Java最核心的類庫,如集合、IO、資料庫連接以及網路編程等。
JavaEE企業版
是為開發企業級應用提供的解決方案。JavaEE可以被看作一個技術平臺,該平臺用於開發、裝配以及部署企業級應用程式,其中主要包括Servlet、JSP、JavaBean、JDBC、EJB、WebService等技術。
JavaME小型版
是為開發電子消費產品和嵌入式設備提供的解決方案。JavaME主要用於小型數字電子設備上軟體程式的開發。例如,為家用電器增加智能化控制和聯網功能,為手機增加新的游戲和通訊錄管理功能。此外,JavaME提供了HTTP等高級Internet協議,使行動電話能以Client/Server方式直接訪問Internet的全部信息,提供最高效率的無線交流。
Java語言的特點
1.簡單
Java語言是一種相對簡單的編程語言,它通過提供最基本的方法來完成指定的任務,只需要理解一些基本的概念,就可以用它編寫出適合於各種情況的應用程式。Java丟棄了C++中很難理解的運算符重載、多重繼承等模糊概念。特別是Java語言不使用指針,而是使用引用,並提供了自動的垃圾回收機制,使程式員不必為記憶體管理而擔憂。
2.面向對象
Java語言提供了類、介面和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持介面之間的多繼承,並支持類於介面之間的實現機制(關鍵字為implements)。Java語言全面支持動態綁定而C++語言只對虛函數使用動態綁定。總之,Java語言是一個純粹的面向對象程式設計語言。
3.安全
Java語言不支持指針,一切對記憶體的訪問都必須通過對象的實例變數來實現,從而使應用更安全。
4.跨平臺
用Java語言編寫的程式可以運行在各種平臺上,也就是說同一段程式既可以在Windows操作系統上運行,也可以在Linux操作系統上運行。它的原理是Java程式的文件class並不直接被電腦解釋執行,而是先運行在Java虛擬機上,通過虛擬機跟系統底層做一個中間的轉換。需要瞭解Java程式跨平臺,但虛擬機不跨平臺,想要在某個操作系統上運行Java程式,就要安裝於系統版本相對應的虛擬機版本,Java程式-虛擬機-操作系統的關係我畫了下麵一張圖供理解。
5.支持多線程
Java語言是支持多線程的。所謂多線程可以理解為程式中有多個任務可以併發執行,這樣可以在很大程度上提高程式的執行效率。
JDK的使用
什麼是JDK?
Sun公司提供了一套Java開發環境,簡稱JDK,它是整個Java的核心,其中包括Java編譯器、java運行工具、java文檔生成工具、java打包工具等。
為了滿足用戶日新月異的需求,JDK的版本也在不斷地升級。在1995年,java誕生之初就提供了最早的版本JDK1.0,隨後相繼推出了JDK1.1、JDk1.2、JDK1.3、JDK1.4、JDK5.0、JDK6.0、JDK7.0、JDK8.0
Sun公司除了提供JDK還提供了一種JRE工具,它是Java運行環境,是提供給普通用戶使用的。由於用戶只需要運行事先編寫好的程式,不需要自己動手編寫程式,因此JRE工具中只包含java運行工具,不包含java編譯工具。值得一提的是,為了方便使用,Sun公司在其JDK工具中自帶了一個JRE工具,也就是說開發環境中包含運行環境,這樣以來,開發人員只需要在電腦上安裝JDK即可,不需要專門安裝JRE工具了。
安裝JDK
第一步下載JDK;打開oracle公司java的下載頁面http://www.oracle.com/technetwork/java/javase/downloads/index.html
第二步選擇JDK8版本,也可以選擇其它的版本,看個人喜好。
第三步;選擇跟系統相對應的JDK版本,我的是windows32位,所以選擇winx86版本,x86就是32位的意思。如果怕下載錯了64位也可下載32位的,因為向下相容。
下載完成後雙擊安裝包,跟著提示下一步即可,因為我的電腦已經安裝好了javase這裡就不上圖了。說幾點安裝要註意的地方,第一點安裝路徑最好不要有中文,容易導致莫名其妙的錯誤,你還排除不出跟哪裡配置錯誤有關。第二點當安裝開始後再次彈出下一步視窗的時候,這時候你註意系統預設的安裝路徑最後面是jre文件夾,其實在這時JDK已經安裝完成了,這是要你安裝一個獨立的JRE。因為我們安裝JDK的時候就已經預設安裝好了jre,這裡直接取消就好了,如果你還想裝一個獨立的JRE可以繼續安裝。到這裡JDK已經安裝完成。
檢查JDK安裝是否正確
安裝好了JDK要運行一下看JDK是否安裝成功。
步驟:1、打開命令行,路徑切換到java安裝路徑里的bin目錄里。運行javac命令如出現下圖內容則安裝成功。
如果出現不是內部或外部命令,也不是可運行的程式或批處理文件則安裝失敗,要檢查進入的路勁是否正確,以及下載的安裝包是否完整,安裝是否正確。
JDK目錄介紹
bin目錄:該目錄用於存放一些可執行程式,如javac.exe(java編譯器)、java.exe(java運行工具)、jre.exe(打包工具)、javadoc.exe(文檔生成工具)等。
db目錄:db目錄是一個小型的資料庫。從JDK6.0開始,java中引入了一個新的成員javaDB,這是一個純java實現、開源的資料庫管理系統。這個資料庫不僅很輕便,而且支持JDBC4.0所有的規範,在學習JDBC時,不需要額外第安裝一個資料庫軟體,選擇直接使用javaDB即可。
jre目錄:jre是java程式運行環境,此目錄是java運行環境的根目錄,它包含了java虛擬機,運行時的類包、java應用啟動器以及一個bin目錄,但不包含環境中的開發工具。
include目錄:由於JDK是通過C和C++實現的,因此在啟動時需要引入一些C語言的頭文件,該目錄就是用於存放這些頭文件的。
lib目錄:lib是library的縮寫,意為java類庫或庫文件,是開發工具使用的歸檔包文件。
src.zip文件:存放的是JDK核心類的源代碼,通過該文件可以查看java基礎類的源代碼。
詳細講解javac跟java命令。
javac.exe是java編譯器工具,它可以將編寫好的java文件編譯成class位元組碼文件。而位元組碼文件才是java可執行的文件。
java.exe是java運行工具,它會啟動一個java虛擬機(JVM)進程,java虛擬機相當於一個虛擬的操作系統,它專門負責運行由java編譯器生成的位元組碼文件。
第一個java程式
在JDK安裝目錄里的bin目錄里創建一個文本文檔,重命名為HelloWorld.java。然後用記事本方式打開,編寫一段java代碼。
第一個HelloWorld程式
1 public class HelloWorld{ 2 public static void main(String[] args){ 3 System.out.println("HelloWorld"); 4 } 5 }
上面的代碼實現了一個java程式,下麵對其中的代碼經i系那個簡單的解釋。
class是一個關鍵字,它用於定義一個類。在java中,類就相當於一個程式,public聲明這是一個公共類,公共類的類名跟文件名必須相同。所有的代碼都需要在類中書寫。HelloWorld是類的名稱,簡稱類名。class關鍵字於類名之間需要用空格、製表符、換行符等任意的空白字元進行分隔。類名之後要寫一對大括弧,它定義了當前這個類的管轄範疇,所有的代碼都需要寫在這個大括弧中。
public static void main(String[] args){} 定義了一個main方法,該方法是java程式在執行的時候的執行入口。
在main方法中寫了一條輸出語句System.out.println();它的作用是列印一段文本信息,把這條信息輸出在命令行視窗中。這樣我們才會直觀的看到程式運行的結果。
在寫程式的時候要註意中英文問題,所有的符號都必須是英文半形格式,否則編譯就會報錯。
編譯時找不到文件
這有可能是你文件名寫錯了,如果文件名對,路徑也對,那很可能是你設置隱藏了文件類型的擴展名,這時候雖然你命名了文本文檔為.java格式,其實是xxxxx.java.txt 打開電腦選擇工具選擇文件夾選項在高級設置欄中將“隱藏已知文件類型的擴展名”選項前面的√取消 然後確定就行。在回到文件查看類型。如果是txt則重命名為.java格式即可。
系統環境變數
配置環境變數的目的是為了開發更加的便利,畢竟將所有的程式都放在bin目錄里不利於管理。而且容易誤刪java里的文件。配置好了環境變數就可以在任何路徑下都可使用java運行命令。
步驟:先複製java的安裝路徑複製到bin。然後滑鼠放在電腦圖標上右擊選擇屬性,選擇高級系統設置選擇環境變數,在下麵的系統變數里找到path環境變數,雙擊打開。註意不要動裡面的任何值。在變數值里把游標移動到最前面然後粘貼,在粘貼的路徑bin後面加上英文分號。確定保存即可。
我們還可以配置classpath以便於在任何路徑下都能執行.class文件。
步驟:還是找到環境變數在上面的用戶變數里選擇新建,命名為classpath,然後把存放.class文件目錄的路徑複製到變數值里,後面加上英文分號。
習題
填空題
- java的三個技術平臺分別是(JavaME)、(JavaSE)、(JavaEE)。
- java程式的運行環境簡稱之為(JRE)。
- 編譯java程式需要使用(javac)命令。
- javac.exe和java.exe兩個可執行程式存放在JDK安裝目錄的(bin)目錄下。
5.(path)環境變數用來存儲java的編譯和運行工具所在的路徑,而(classpath)環境變數則用來保存java虛擬機要運行的.class文件路徑。
選擇題
以下選項中,哪些屬於JDK工具?(多選)(ABCD);
- A:java編譯器
- B:java運行工具
- C:java文檔生成工具
- D:java打包工具
Java屬於以下哪種語言?(C);
- A:機器語言
- B:彙編語言
- C:高級語言
- D:以上都不對
下麵哪種類型的文件可以在java虛擬機中運行?(D);
- A:.java
- B:.jre
- C:.exe
- D:.class
安裝好JDK後,在其bin目錄下有許多exe可執行文件,其中“java.exe”命令的作用是以下哪一種?(D);
- A:java文檔製作工具
- B:java解釋器
- C:java編譯器
- D:java啟動器
如果jdk的安裝路徑為“d:\jdk”,若想在命令視窗中任何當前路徑下,都可以直接使用javac和java命令,需要將環境變數path設置為以下哪個選項?(B);
- A:d:\jdk;
- B:d:\jdk\bin;
- C:d:\jre\bin;
- D:d:\jre;
問答題
- 簡述java的特點。
安全:java語言拋棄了C++語言中的指針,使程式變得更安全可靠。
簡單易學:同樣比較C++,沒有指針,沒有多級重載,有自動的垃圾回收機制。
跨平臺:一次編譯,多處運行。java藉助虛擬機功能實現了其它語言沒有的跨平臺性能。
多線程:支持多線程,使程式的運行效率大大提高。
完全面向對象:java是一門完全面向對象的語言。
- 簡述JRE於JDK的區別。
JRE是java運行環境,包括了java的核心類跟虛擬機,以及一些運行java程式所需要的元素。JDK是java開發環境,不僅包括了JRE本身,還具備了開發java程式的功能。
編程題
- 獨立編寫HelloWorld程式。
1 public class HelloWorld{ 2 public static void main(String[] args){ 3 System.out.println("HelloWorld"); 4 } 5 }