1.物件導向最重要的幾個概念:物件,類,介面,封裝,繼承,多型。
1. 物件:在物件導向程式設計裡面,萬事萬物都被視為物件,物件是對資料和操作的封裝。
2. 類:對一類物件的抽象。
3. 介面:一組功能契約。
4. 封裝:隱藏物件細節。
6. 多型:物件導向非常好的特性,更是所有模式和構架的基礎。多型允許執行時決定例項化哪個子類,再結合反射機制,可以將該變化點推遲到配置檔案。
2. clr啟動程式時會建立3個應用程式域,分別為系統域,共享域和預設域。
系統域:負責建立共享域和預設程式域。它將系統庫mscorlib.dll載入共享域。
共享域:所有不屬於任何特定**將被載入到該域,包括基本型別等等。
預設域:是應用程式域的乙個例項,一般應用程式在此域執行。域之間的互訪問,要通過.net remoting**來實現。每個應用程式域都有自己的載入堆(高頻堆,低頻堆,**堆),控制代碼表,介面虛表管理器和程式集快取。
3. 乙個簡單應用程式從clr啟動開始的一系列過程:
clr啟動程式建立系統域,系統域負責載入共享域和預設程式域的建立。載入共享域包括載入mscorlib.dll等核心庫。載入預設程式域,主要是載入客戶程式的各個型別方法表,該方法表按照先基類後子類的順序排列,方法表元素的順序是:繼承的虛方法,新的虛方法,例項方法,靜態方法。而物件的建立過程是,遞迴分配父類的記憶體空間並呼叫相應的建構函式初始化各欄位,直到system.object物件為止。物件記憶體中包含:snycblc(同步塊索引),typehandle(型別控制代碼,指向方法表),instance fields(例項字段),stringliterals(字串標籤).其中instance fields也是按照先父類再子類的順序建立。
4. 對於介面的實現機制?待深入
5. 物件繼承後,根據物件原則決定是呼叫父類的虛方法還是子類的虛方法;根據就近原則決定是呼叫父類的字段還是子類的字段。
函式物件點滴
hanlray gmail.函式物件是就是乙個類物件,由於過載了呼叫運算子 而具有了類似函式的呼叫形式。通常使用函式物件來實現某種形式的 和傳統的用函式指標實現的 相比,函式物件有以下優點 理由是stl中可以使用函式物件的演算法都被設計為值傳遞。當然你可以使用顯式模板實參來傳引用,但是那樣可能會帶來...
物件導向 初識物件導向
面向過程思想 步驟清晰簡單,第一步做什麼,第二步做什麼.面向過程適合處理一些較為簡單的問題 物件導向思想 物以類聚,分類的思維模式,思考問題首先會解決問題需要分哪些類,然後對這些類進行單獨思考,最後才是對某個分類下的細節進行面向過程的思索 物件導向適合處理複雜的問題,適合處理需要多人協作的問題 對於...
物件導向程式設計01 面向過程 物件導向
前面12講我已經寫完了從零開始學j ase 慶祝完結撒花!那麼從今天開始正式步入物件導向程式設計。建議開啟本章之前先回顧 j ase010方法詳解和 j a變數與方法的呼叫 同類操作中與跨類操作中的對比 物件導向程式設計 oop object oriented programming 物件導向程式設...