二週突刺2(陣列)
------------恢復內容開始------------
Arrays類
Arrays類中的方法都是static修飾的靜態方法,使用時直接使用類名進行呼叫(Arrayx.fill())不用使用物件來呼叫
列印陣列元素 Arrays.toString(陣列名)
給陣列賦值填充 fill Arrays.fill( a )
對陣列排序(升序) sort
比較元素值 equals
查詢陣列元素 binarySearch
Arrays.toString() 可以列印陣列
氣泡排序(八大演算法之一)
兩層迴圈,外層冒泡輪數,裡層依次比較。
1,比較陣列中兩個相鄰的元素,如果第一個數比第二個數大,交換位置;
2,每一次比較都會產生一個最大或者最小的數字;
3,下一輪則可以少一次排序
4,依次迴圈,直至結束;
稀疏陣列(二維陣列)
但一個數組中大部分元素為0,或者為同一值的陣列時,可以用稀疏陣列來儲存該陣列。
處理方式
記錄一共幾行幾列,幾個不同的值; 把具有不同值的元素和行列及值記錄在一個小規模的數組裡,從而縮小程式規模;
面向物件程式設計 Object-Oriented Programming, OOP
本質: 以類的方式組織程式碼,以物件的組織(封裝)資料。
抽象
三大特性:
繼承 —— 子類父類繼承
封裝 —— 包裝一個盒子
多型 —— 同一個事物多個形態
static 和類一起載入的,普通方法只有被new才存在,所以,帶static的方法不能直接呼叫普通方法;
實際引數和形式引數型別要一致
構造器 使用new必須要有關鍵字,定義有參構造就把無參構造補上;預設都會呼叫預設存在的無參構造
類(只有屬性和方法)與物件
類是一個模板:抽象
物件是一個具體的例項
封裝
1 該露的露,該藏得藏
程式設計要求:“高內聚,低耦合”。
高內聚就是類的內部資料操作細節自己完成,不允許外部干涉;低耦合:僅暴露少量的方法給外部使用。
2 封裝(資料的隱藏)
通常,應禁止直接訪問一個物件中資料的實際表示,而應通過操作介面來訪問,這稱為資訊隱藏。
!! 屬性私有,get/set
優點:
提高程式碼的安全性,保護資料;
隱藏程式碼的實現細節;
統一介面;
增強系統可維護性
繼承
繼承的本質是對某一批類的抽象,從而實現對現實世界更好的建模。
extends 本意是擴充套件, 子類是父類的擴充套件,即繼承。
java中類只有單繼承,沒有多繼承!
繼承是類和類之間的一種關係(除此之外還有依賴,組合,聚合等)。
所有的類預設直接或間接繼承object
super
呼叫父類的構造器,子類構造器中super();必須放在第一行;
構造器裡只能呼叫一個構造器,只允許存在super或this
方法重寫
重寫需要有繼承關係,子類重寫父類的方法
方法名必須相同
引數列表必須相同(否則就是過載)
修飾符:範圍可以擴大不能縮小,父類只能比子類的許可權大 public>Protected>Default>private
丟擲的異常:範圍,可以被縮小,但不能被擴大; ClassNotFoundException--->Exception(大)
------------恢復內容結束------------