簡單的物件導向複習

2022-01-16 10:46:51 字數 1225 閱讀 6417

封裝,繼承,多型

封裝:隱藏物件的屬性和實現細節,僅對外公開介面,控制在程式中屬性的讀和修改的訪問級別;將抽象得到的資料和行為(或功能)相結合,形成乙個有機的整體,也就是將資料與運算元據的源**進行有機的結合,形成「類」,其中資料和函式都是類的成員

繼承:is-a關係繼承

多型:實現父類方法,實現多型

抽象:不可被例項化的類,可設做抽象。抽象方法必須實現。有抽象方法則必須為抽象類

介面:介面中的方法或屬性前面不能有修飾符,方法沒有方法體。介面是把隱式公共方法和屬性結合起來,以封裝特定功能的乙個集合。一旦類實現了介面,類就可以支援介面所指定的所有屬 性和成員。宣告介面在語法上與宣告抽象類完全相同,但不允許提供介面中任何成員的執行古方式。介面的命名,前面要加乙個大寫字母『i』。抽象類與介面的區 別:抽象類可以給出一些成員的實現,介面卻不包含成員的實現,抽象類的抽象成員可被子類部分實現,介面的成員需要實現類完全實現,乙個類只能繼承乙個抽象 類,但可實現多個介面等等;類是對物件的抽象,抽象類是對類的抽象,介面是對行為的抽象;從設計角度講,抽象類是從子類中發現了公共的東西,泛化出父類, 然後子類繼承父糞,而介面是根本不知子類的存在,方法如何實現還不確認,預先定義

抽象類和藉口的區別:在我看來,抽象是在設計前寫好子類必須有的方法,介面則是將擁有的功能對外,讓其實現

集合:arraylist實現了ilist介面,所以提供了新增,插入或移除某一範圍元素的方法:宣告時可以 ilist arrayanimal = new arraylist(); 或者 arraylist arrayanimal;不是型別安全的。將視所有元素為object

泛型:泛型是具有佔位符( 型別引數)的類、結構、介面和方法,這些佔位符是類、結構、介面和方法所儲存或使用的乙個或多個型別的佔位符。泛型集合類可以將型別引數用作它所儲存的物件的型別的佔位符;型別引數作為其字段的型別和其方法的引數型別出現

委託與事件:委託是對函式的封裝,可以當作給方法的特徵指定乙個名稱。而事件則是委託的一種特殊形式,當發生有意義的事情時,事件物件處理通知過程

委託:委託是一種引用方法的型別,一旦為委託分配了方法,委託將與該方法具有完全相同的行為

事件:是說在發生其他類或物件關注的事情時,類或物件可通過事件通知它們

物件導向的複習

物件導向通過函式 封裝得到乙個類,備註 類的本質還是函式 1 每個類 函式 天生有乙個 prototype 的屬性,這個 prototype 又是乙個物件,這個物件裡面有個 construction 建構函式 的屬性,屬性值是類本身。2 我們所有 new 乙個類的時候,其實是呼叫它的建構函式。建構函...

物件導向複習

function class1 複製 class class2 複製 function teacher teacher.prototype.beat 打學生 function student var s1 new student console.log s1 student console.log ...

物件導向的複習 繼承

繼承 解決 的冗餘,實現多型,增加了 的擴充套件性,便於維護 繼承的特性 1.單根性 乙個子類只能有乙個父類 2.傳遞性 孫子繼承爺爺 3.子類能繼承父類的方法和屬性,不能繼承私有字段 4.子類呼叫父類的建構函式用使用關鍵字base 5.父類只能呼叫自己的成員,不能和使用子類的成員 6.子類之間也不...