筆者最近開始學習Java後端的知識,故對之前所學的Java知識進行一個複習整理,爲後續學習打下良好基礎。由於寫這篇文章主要是複習鞏固方便自己理解,文章側重在一些自己認爲的重點和自己不足的地方,所以所涉及的知識點並不那麼完善,有些描述並不那麼專業,也並不深入,就是一些基本的操作,請多多包涵。文章僅供參考,謝謝。
前面兩篇文章Java基礎知識整理複習(一) Java基礎知識整理複習(二)講了Java的基本知識(很淺薄),這篇文章主要複習一下有關Java的一些細節知識。
一、類和對象
(1)理解類和對象
簡單的說,類就是對具有相同屬性(這裏相同的程度取決於抽象的程度)事物的抽象,對象就是類的實例化。舉個例子:魚就是一個類,而一條具體的魚就是魚類的對象(實例);魚的抽象程度有點高,降低一點,鯉魚也是一個類,而一條具體的鯉魚也同樣是鯉魚類的對象。這裏魚類和鯉魚類並不衝突,關鍵是看抽象程度,另外鯉魚類也可看做是魚類的子類。
(2)在Java中使用類和對象
首先,對於我們創建的每個項目,其本身就是一個公開類,相應的我們便可以在這個公開類裏面進行一些操作。
- 定義類
class ClassName{
//成員
}
類具有很多成員,主要是兩種,一種是類的屬性,一種是對這些屬性的操作,也稱爲方法。對於這些成員,類對其賦有有不同的訪問屬性,具體有
public //公開
private //私有
protected //保護
//默認,就是不加說明符
按照習慣,在定義這些變量時直接在前面加上這些修飾符即可。
在類的諸多方法裏面,最重要的是類的構造方法,在我們生成對象的時候就必須使用構造方法,另外如果我們自己不寫構造方法的話,Java會提供一個默認的無參構造方法。在寫構造方法時要注意:構造方法與類同名,且無返回值。
- 定義對象
生成對象時用new 構造函數的方式。當然,生成的對象是具有類的各種屬性的。另外在Java中不需要寫析構函數,Java有專門的機制來處理,而C++必須寫。
二、Java關鍵字
簡單理解,關鍵字就是起標識說明作用的字符,我們定義變量名字時要避免與關鍵字同名。有關關鍵字的相關知識具體見Java關鍵字
下面講幾個容易出錯的關鍵字
- final
用來說明最終屬性,表明一個類不能派生出子類,或者成員方法不能被覆蓋,或者成員域的值不能被改變,或者用來定義常量。
主要想說的是經final定義後的變量是不能修改其值的,謹記。
- static
表明具有靜態屬性
簡單理解就是定義爲static的成員是歸類所有,由類的所有對象共享。個人認爲最大好處就是可以直接通過類就可以使用這些靜態成員,而不用創建對象。
三、Java常用庫函數
Java本身具有很多有用的包,合理利用這些包可以大大提高編程效率。這也是Java編程的一大優勢。
大家可參考大佬的博客Java基礎類庫簡介,建議不要去死記這些庫,在編程的時候有這方面的需求就去看看資料,多寫幾遍就記住了。
使用這些庫很簡單,直接在程序的前面引用包名,然後在使用時用包名調用相應的方法的方式就可以了。
以常用是數學函數爲例
import import java.lang.Math; //引用Math這個包
double a=Math.sqrt(9); //將a賦值爲9的開平方根
需要注意的是使用這些方法時帶上包名是指明其來自哪個包,這樣可以避免一些錯誤。
在這裏再次強調一下爲避免因同名函數而引起bugs,在引用包名時一定要使用完整路徑,不要用*去引入其包類的所有函數
2019.12.06