1. 線性表:n給具有相同特性資料元素的集合;
2. 順序表:是用一段實體地址連續的儲存單元依次儲存資料元素的線性結構,一般情況下採用陣列儲存。
優點:空間連續,支援隨機訪問;
缺點:中間或前面部分的插入刪除時間複雜度o(n) 2.增容的代價比較大
優點:1.任意為止地插入刪除時間複雜度為o(1);2.沒有增容問題,插一 個開闢乙個空間;
缺點:不支援隨機訪問;
5.包包 (package) 是組織類的一種方式.使用包的主要目的是保證類的唯一性.
關鍵字:package;
包訪問許可權:只能在同乙個包下訪問;
匯入:可以使用import語句匯入包;
6.將類放到包中:
在檔案的最上方加上乙個 package 語句指定該**在哪個包中.
包名需要盡量指定成唯一的名字, 通常會用公司的網域名稱的顛倒形式(例如 com.bit.demo1 ).
包名要和**路徑相匹配. 例如建立 com.bit.demo1 的包, 那麼會存在乙個對應的路徑 com/bit/demo1 來存如果乙個類沒有 package 語句, 則該類被放到乙個預設包中.
儲**.
7.繼承:
目的:為了**的復用;
關鍵字:extends;
class 子類 extends 父類
關係:類和子類是is---->>a的關係;子類會繼承父類除構造方法外的所有東西,所以子類先要幫助父類構造,通過super來呼叫父類的構造方法;
super:
procted:只允許類的子類和同乙個包的其他類訪問;
final:被final修飾的類就不能被其他類繼承;
**8:多型:**執行是繫結;
向上轉型:父類的引用指向子類的物件;
重寫:方法名相同;引數列表相同;返回值相同;方法不能是private;子類的方法訪問許可權一定要大於父類的方法訪問許可權;
向下轉型:父類–》子類;(慎用):必須先向上轉型(instanceof判斷是否存在例項)
發生多型:1、繼承-》父類需引用子類物件(向上轉型); 2、通過父類去呼叫子類和父類同名的覆蓋方法;
animal animal=new cat(); animal.eat();
注意:在構造·方法內可以發生執行時繫結;
**9:抽象類:**包含抽象方法的類(abstract)
1. 抽象類不能被例項化;
2、抽象類中可以有非抽象的方法和成員變數
3、抽象類的建立就是為了繼承;
4、抽象類被繼承之後一定要重寫抽象構造方法;
5、抽象類繼承抽象類可以選擇是否重寫;
10:介面:關鍵字(inte***ce);
1. 介面當中所有的方法不能有具體的實現,都是抽象方法----預設public abstract;可以不寫;
2. 介面當中的成員變數預設public static final需要初始化;
3. 介面不可以被例項化
4. 類和介面之間的關係稱為實現;必須重寫;
5. 實現關鍵字(implements);多介面a,b,c;
6. 類和介面是實現;介面和介面是繼承;
7. 自定義型別排序要實現(compareable);vbbb
8. cloneable:空介面---》標誌當前類可以被轉殖;
面向過程程式設計和物件導向程式設計
面向過程程式設計和物件導向程式設計 面向過程程式設計是一種以 過程為中心 的程式設計思想 分析出解決問題的步驟,然後用函式把這些步驟一步一步實現 面向過程程式設計,資料和對資料的操作是分離的。物件導向程式設計 物件導向程式設計是 將事物物件化,通過物件通訊來解決問題 物件導向程式設計,資料和對資料的...
面向過程程式設計和物件導向程式設計
面向過程程式設計和物件導向程式設計 一 面向過程程式設計 面向過程程式設計將程式分成了 資料 和 處理函式 兩部分,程式以 處理函式 為核心,如果要執行什麼操作,就將 資料 傳給相應的 處理函式 返回我們需要的結果 面向過程的思路很好掌握,上手容易,但它存在三方面的問題 1 資料和處理函式沒有直接的...
物件 類和物件導向程式設計
物件 物件是數個屬性無序的集合。ecma 262使用一些內部特性來描述屬性的特徵 物件的屬性的特性 屬性分為資料屬性 定義屬性時使用 和訪問器屬性 獲取或設定屬性值時使用 資料屬性 資料屬性包含乙個儲存資料值的位置。值會從這個位置讀取,也會寫入到這個位置。資料屬性有 4個特性描述它們的行為。conf...