零基礎輕鬆入門——JAVA基礎學習

茶花盛開發表於2017-04-07

你準備好學習java了嗎?瞭解一下開發java的基本過程以及java的基本特性。與C++做些簡單的比較,熟悉兩種語言的共性和區別,關於一些java知識體系。

Java 的主要特性:
1、 Java語言的語法與C語言和C++語言很接近,使得大多數程式設計師很容易學習和使用。另一方面,Java丟棄了C++中很少使用的、很難理解的、令人迷惑的那些特性,如操作符過載、多繼承、自動的強制型別轉換。特別地,Java語言不使用指標,而是引用。並提供了自動的廢料收集,使得程式設計師不必為記憶體管理而擔憂。
2、Java是物件導向的,具有類,介面等原語;
3、Java是解釋型的語言,Java程式在Java平臺上被編譯為位元組碼格式,然後可以在實現這個Java平臺的任何系統中執行。
解釋型語言:,解釋性語言編寫的程式不進行預先編譯,以文字方式儲存程式程式碼。在釋出程式時,看起來省了道編譯工序。但是,在執行程式的時候,解釋性語言必須先解釋再執行。
編譯型語言:程式在執行之前需要一個專門的編譯過程,把程式編譯成為機器語言的檔案,執行時不需要重新翻譯,直接使用編譯的結果就行了。程式執行效率高,依賴編譯器,跨平臺性差些。如C、C++、Delphi等。如果想學習java可以來這個群,首先是二二零,中間是一四二,最後是九零六,裡面有大量的學習資料可以下載。

Java開發工具及環境、開發包
Java主要分為三大體系:
JavaSE(J2SE)(Java2 Platform Standard Edition,java平臺標準版)
JavaEE(J2EE)(Java 2 Platform,EnterpriseEdition,java平臺企業版)
JavaME(J2ME)(Java 2 Platform Micro Edition,java平臺微型版)
2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名以取消其中的數字”2”:J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME。
說明:
Standard Edition(標準版) J2SE 包含那些構成Java語言核心的類
比如:資料庫連線、介面定義、輸入/輸出、網路程式設計
Enterprise Edition(企業版) J2EE 包含J2SE 中的類,並且還包含用於開發企業級應用的類。
比如:EJB、servlet、JSP、XML、事務控制
Micro Edition(微縮版) J2ME 包含J2SE中一部分類,用於消費類電子產品的軟體開發。
比如:呼機、智慧卡、手機、PDA、機頂盒
他們的範圍是:J2SE包含於J2EE中,J2ME包含了J2SE的核心類,但新新增了一些專有類,應用場合,API的覆蓋範圍各不相同。
上面的每個版本都分別對應不同的JDK(java development kit),可以根據應用不同下載不同的JDK安裝。對於初學者,先學習Java SE,有了一定基礎之後,可以考慮深入學習Java EE,或者轉戰Android也行。
JDK中包含了java開發需要的各種類和介面,以及執行java程式所需要的環境JRE,若是隻想在各種系統平臺上執行java程式而不進行開發,則可以直接下載JRE包即可。有些系統是自帶JRE的,但不包括windows,因此要想在windows上執行java程式,需要在系統上安裝JRE。
JRE中包含了JVM(Java虛擬機器):它是整個java實現跨平臺的最核心的部分,所有的java程式會首先被編譯為.class的類檔案,這種類檔案可以在虛擬機器上執行,也就是說class並不直接與機器的作業系統相對應,而是經過虛擬機器間接與作業系統互動,由虛擬機器將程式解釋給本地系統執行。

2、工具
Java開發需要一些較好的開發工具,比較好的一個IDE就是Eclipse;eclipse、idea等IDE有自己的編譯器而不是用JDKbin目錄中自帶的,所以在安裝時你會發現他們只要求你選中jre路徑就ok了;而且用eclipse的話不需要設定系統環境變數,它會自動找到安裝的JRE地址。

3、開發環境
Java可以下windows和linux等系統下進行開發,這裡僅介紹在windows下開發需要設定的環境引數,在安相應版本JDK之後,進行變數設定。
變數設定
變數名:JAVA_HOME
變數值:C:ProgramFilesJavajdk1.7.0
//這裡是你JDK的安裝路徑,可以更換
變數名:CLASSPATH
變數值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;//記得前面有個”.”
變數名:Path
變數值:%JAVA_HOME%in;%JAVA_HOME%jrein;
1、”開始”->;”執行”,鍵入”cmd”;
2、鍵入命令”java -version”,”java”,”javac”幾個命令,出現相關畫面,說明環境變數配置成功;

Java基礎語法
1、基本語法規則
編寫Java程式時,應注意以下幾點:
大小寫敏感:Java是大小寫敏感的,這就意味著識別符號Hello與hello是不同的。
類名:對於所有的類來說,類名的首字母應該大寫。如果類名由若干單片語成,那麼每個單詞的首字母應該大寫,例如 MyFirstJavaClass 。
方法名:所有的方法名都應該以小寫字母開頭。如果方法名含有若干單詞,則後面的每個單詞首字母大寫。
原始檔名:原始檔名必須和類名相同。當儲存檔案的時候,你應該使用類名作為檔名儲存(切記Java是大小寫敏感的),檔名的字尾為.java。(如果檔名和類名不相同則會導致編譯錯誤)。
主方法入口:所有的Java 程式由public static void main(Stringargs)方法開始執行。
另外:java中沒有標頭檔案,它是以import的方法從外面匯入.class檔案的; java中的main函式是包含在一個類中的,與C++是不一樣的,在C++中沒有定義類也是一個程式。

2、原始檔宣告規則
當在一個原始檔中定義多個類,並且還有import語句和package語句時,要特別注意這些規則。
一個原始檔中只能有一個public類
一個原始檔可以有多個非public類
原始檔的名稱應該和public類的類名保持一致。例如:原始檔中public類的類名是Employee,那麼原始檔應該命名為Employee.java。
如果一個類定義在某個包中,那麼package語句應該在原始檔的首行。
如果原始檔包含import語句,那麼應該放在package語句和類定義之間。如果沒有package語句,那麼import語句應該在原始檔中最前面。
import語句和package語句對原始檔中定義的所有類都有效。在同一原始檔中,不能給不同的類不同的包宣告。
類有若干種訪問級別,並且類也分不同的型別:抽象類和final類等。這些將在訪問控制章節介紹。除了上面提到的幾種型別,Java還有一些特殊的類,如:內部類、匿名類。

3、Java包:
包主要用來對類和介面進行分類。當開發Java程式時,可能編寫成百上千的類,因此很有必要對類和介面進行分類。(即包中包含很多種類的類和介面)
當編譯一個.java檔案(即一個編譯單元)時,在.java檔案中的每個類都會有一個輸出檔案,而該輸出檔案的名稱與.java檔案中每個類的名稱相同,只是多了一個字尾名.class。如果你真的想學習java你可以來這個群前面是四九一,中間是八九七後面是一五八這裡有技術大牛親自指導幫助你 還有免費的直播課程學。因此在編譯少量.java檔案之後,會得到大量的.class檔案。每一個.java檔案編譯以後都會有一個public類,以及任意數量的非public類。因此每個.java檔案都是一個構件,如果希望許許多多的這樣的構件從屬於同一個群組,就可以在每一個.java檔案中使用關鍵字package。而這個群組就是一個類庫。
如果使用package語句,它必須是.java檔案中除註釋以外的第一句程式程式碼。

4、許可權修飾符
Java中有四種許可權修飾符,這些修飾符控制對類,類的成員方法,類的成員變數的訪問;其作用範圍如下:
public:所有的類都可以訪問。
private:只有在同一個類中才可以訪問。
protected:同一個類中、同一個包中、子類中都可以訪問,其他包不可以。
包型別的,即預設型別同一個類中、同一個包中可以訪問到,其他包和子類不可以。

5、資料型別
byte: Java資料型別和c/c++基本類似,但Java中有byte型別,表示8位2進位制的整數,相當於c/c++中的char.
常量:Java中常量用final表示,相當於const,final中的值是可以改變的;
-包裝類: 在開發過程中,有時候需要使用物件,而不是內建資料型別,因此java為每個內建資料型別提供了對應的包裝類所有的包裝類(Integer、Long、Byte、Double、Float、Short)都是抽象類Number的子類,對於字元也有相應的Character類。每個類具有相應的函式。
陣列:java陣列是物件,與c++不同,語法上與c++類似,java陣列具有一個屬性length可以獲取陣列的長度。(陣列a,a.length為陣列長度),Array類具有一些函式可以對陣列進運算。

Java高階特性1、Java中的介面
Java中類繼承只允許一個父類,當需要進行多個繼承時,需要使用介面。介面類似於類,定義時用interface替代類定義中的class,但裡面的方法只有定義沒有實現。介面檔案的檔名必須與介面名相同。繼承介面的關鍵字為implement,與類的繼承extends相似,可以進行多繼承。介面繼承必須實現介面中的所有方法。
介面是規範,規定某個實現類裡必須有那些方法,只要事先定義好介面,當大家一起合作的時候就不用特別麻煩的互動,而是每個人寫好自己的介面實現類,最後拼接到一起就可以了比如資料庫連線類,介面規定好有哪些方法、方法的功能,然後每個資料庫廠商根據介面去實現具體的類,達到統一的目的,要不每個資料庫廠商自己實現一套,那麼你程式設計的時候就要根據不同驅動使用不同的方法,造成不必要的麻煩。

2、Java中的抽象類
只宣告方法的存在而不具體實現的類,抽象類不能例項化(不能建立相應物件)定義方式:在class前加上abstract,ex:
abstractclass 類名{ ;;;}
抽象類中定義的沒有實際意義的,必須在子類重寫的方法為抽象方法,定義時前面加abstract:abstract type name(agrs)。
一般方法定義與在正常類中定義一樣。
java物件建立一般方式:ClassName obj = new ClassName;


相關文章