《面向對象程序設計》ppt課件1初中信息技術.ppt
《《面向對象程序設計》ppt課件1初中信息技術.ppt》由會員分享,可在線閱讀,更多相關《《面向對象程序設計》ppt課件1初中信息技術.ppt(36頁珍藏版)》請在裝配圖網上搜索。
第2章面向對象程序設計 2 1面向對象程序設計思想2 2類2 3對象 2 1面向對象程序設計思想 面向對象程序設計的特點1 抽象性用C 語言可以將該圖形描述如下 圓形 circle 數據抽象 doublex y r 行為抽象 setx sety setr draw 抽象是面向對象方法的核心 2 封裝性3 繼承性4 多態(tài)性多態(tài)性也是面向對象程序設計的重要特性之一 1 抽象 抽象是指從具體的實例中抽取出來共同的性質并加以描述的過程 它忽略了一個主題中與當前目標無關的那些方面 以便更充分地注意與當前目標有關的方面 抽象過程 先注意問題的本質及描述 其次是實現過程或細節(jié) 數據抽象 描述某類對象的屬性或狀態(tài) 對象相互區(qū)別的物理量 代碼抽象 描述某類對象的共有的行為特征或具有的功能 抽象的實現 通過類的聲明 抽象實例 鐘表 數據抽象 intHour intMinute intSecond代碼抽象 SetTime ShowTime 科目一考試駕駛員理論考試科目二考試場地考試科目三考試實際道路考試科目四考試安全文明駕駛常識考試2016年駕駛員試題網學車試題大全 抽象實例 鐘表類 classClock public voidSetTime intNewH intNewM intNewS voidShowTime private intHour Minute Second 2封裝 封裝指的是將方法和數據放于同一對象中 使得對數據的存取只能通過該對象本身的方法來進行 主要思想是將數據 數據成員 及處理這些數據的相應函數 成員函數 封裝到類class中 C 的一種新的定義數據類型的方法 而使用類的變量則稱為對象 object 在對象內 只有屬于該對象的成員函數才可以存取該對象的數據成員 這樣 其他函數就不會破壞到它的內容 從而起到保護和隱藏數據的效果 將抽象出的數據成員 代碼成員相結合 將它們視為一個整體 目的是增強安全性和簡化編程 使用者不必了解具體的實現細節(jié) 而只需要通過外部接口 以特定的訪問權限 來使用類的成員 實現封裝 類聲明中的 實例 3繼承 繼承是一種聯結類與類之間的層次模型 它允許和鼓勵類的重用 提供了一種明確表達共性的方法 一個新類可以從現有的類中派生 這個過程稱為類繼承繼承性很好地解決了軟件的可重用問題實現 聲明派生類 4多態(tài) 多態(tài)性指的是同一消息被不同的對象接收后被解釋為不同含義的能力 也就是一個接口名稱具有多種功能 即同一名稱 不同的功能實現方式 多態(tài)性語言具有語言靈活 抽象 行為共享 代碼共享的優(yōu)勢 很好的解決了應用程序函數同名的問題 目的 達到行為標識統一 減少程序中標識符的個數 實現 重載函數和虛函數 2 2面向對象的基石 類 2 2 1從結構到類2 2 2類的定義2 2 3構造函數2 2 4析構函數 2 2 1從結構到類 1 結構體VC不僅提供了大量預先定義的數據類型 而且還支持自定義的數據類型 結構就是把相互關聯的一些基本數據類型的元素組成一個新的獨立統一體 例2 1 定義一個職工Employee結構數據類型 它包括姓名 工資 地址 移動電話 structEmployee charname 9 floatsalary charaddress 40 charmobile 12 定義一個結構體 事實上是定義了一種數據類型 程序并不會給類型分配內存 內存分配是發(fā)生在結構體變量上 include iostream h include string h voidmain structEmployeeEmployeeA strcpy EmployeeA name 滅絕師太 EmployeeA salary 168 47 strcpy EmployeeA address 峨眉山上 strcpy EmployeeA mobile 13688667755 cout EmployeeA name 已經領上工資了 其數目是 EmployeeA salary endl cout 要想拜謁她 請到 EmployeeA address 或直接傳呼 EmployeeA mobile endl 例2 2 定義一個具體職工EmployeeA 并對該職工進行賦值 程序的主文件名為DefStru cpp 程序的運行結果是 滅絕師太已經領上工資了 其數目是168 47要想拜謁她 請到峨眉山上或直接傳呼13688667755 2 類類是從一個個具體的事物中把共同特征抽取出來形成的一個概念 它反映了事物之間的共性在C 中 在類的定義中 不僅有反映事物屬性的成員變量 還有反映屬性操作的成員函數 類一種自定義數據類型 2 2 2類的定義 在C 中類的定義方式為 class類名 private 私有數據及成員函數 protected 保護數據及成員函數 public 公有數據及成員函數 class是類定義符 類名是一種標識符 它的命名規(guī)則與變量名的命名規(guī)則相同 一對花括號內是類的說明部分 說明該類的成員 類的成員包括成員變量和成員函數兩部分 上述在類的成員變量和成員函數前面出現的關鍵字 public 公有 private 私有 或protected 保護 表示成員的訪問屬性 在類中聲明的成員變量若不特別指明 都被視為私有類型 私有類型的數據只允許類本身聲明的函數對其進行存取 而類外部的任何函數都不能訪問 公有類型的成員可以被任何函數來訪問 它們是類與外部的接口 類的定義反映了對類的描述 定義一個類就是定義一種數據類型 把握類的定義首先要掌握類中包含反映事物屬性的那些成員變量和反映事物操作的那些成員函數 例2 3 定義一個職工TEmployee類 它包括姓名 工資 地址 移動電話數據成員和兩個成員函數 分別實現輸入職工數據和顯示職工屬性 classTEmployee public voidinput char name floatsalary char address char mobile voiddisplay private charm name 9 floatm salary charm address 40 charm mobile 12 例2 4 定義一個交通工具類TVehicle 它具有輪子個數 載重兩個數據成員和三個成員函數 分別實現輸入交通工具的輪子和載重 取輪子個數和載重 classTVehicle public voidInitialize intwheels floatweight 交通工具的初始化intGetWheels void 取輪子個數floatGetWeight void 取載重private intm wheels 輪子個數floatm weight 載重 2 2 3構造函數 構造函數的作用是在對象被創(chuàng)建時使用特定的值構造對象 或者說將對象初始化為一個特定的狀態(tài) 在對象創(chuàng)建時由系統自動調用 如果程序中未聲明 則系統自動產生出一個默認形式的構造函數 允許為內聯函數 重載函數 帶默認形參值的函數 構造函數舉例 classClock public Clock intNewH intNewM intNewS 構造函數voidSetTime intNewH intNewM intNewS voidShowTime private intHour Minute Second 構造函數舉例 構造函數的實現 Clock Clock intNewH intNewM intNewS Hour NewH Minute NewM Second NewS 建立對象時構造函數的作用 intmain Clockc 0 0 0 隱含調用構造函數 將初始值作為實參 c ShowTime 拷貝構造函數 拷貝構造函數是一種特殊的構造函數 其形參為本類的對象引用 class類名 public 類名 形參 構造函數類名 類名 對象名 拷貝構造函數 類名 類名 類名 對象名 拷貝構造函數的實現 函數體 2 2 3析構函數 完成對象被刪除前的一些清理工作 在對象的生存期結束的時刻系統自動調用它 然后再釋放此對象所屬的空間 如果程序中未聲明析構函數 編譯器將自動產生一個默認的析構函數 例2 5 一個包含構造函數和析構函數的例子 程序的主文件為ConstructorExam cpp include includeclassExl private intx public Exl cout Ex1類的對象建立 其構造函數被調用 n Exl cout Ex1類的對象撤消 其析構函數被調用 n voidsetdata inti x i 2 在類中定義成員函數setdata voidprint 類Exl定義結束 classEx2 inty public Ex2 cout Ex2類的對象建立 其構造函數被調用 n Ex2 cout Ex2類的對象撤消 其析構函數被調用 n voidsetdata intj y j j voidprint 類Ex2定義結束voidEx2 print cout classEx2 setw 6 y n 成員函數print 定義結束 voidmain Exls Ex2t s setdata 5 s print t setdata 5 t print 程序運行結果為 Ex1類的對象建立 其構造函數被調用Ex2類的對象建立 其構造函數被調用classExl 10classEx2 25Ex2類的對象撤消 其析構函數被調用Ex1類的對象撤消 其析構函數被調用 2 3對象 2 3 1對象的聲明2 3 2對象的使用2 3 5對象的深入理解 2 3 2對象的使用 當聲明了對象后 就可以使用該對象所隸屬的類的公有 在public部分定義的 成員變量和成員函數 對象的使用 關鍵是使用對象所屬類的成員函數 即熟悉該類都有哪些常用的成員函數 例2 6 建立一個日期類 并且主函數中使用其公有的成員函 主文件為DefObject cpp includeclassTDate public voidSetDate intyear intmonth intday m year year m month month m day day voidShowDate cout Thedateis m year m month m day endl private intm year intm month intm day voidmain TDateToday 建立一個日期對象Today SetDate 2004 8 1 調用設置日期的函數Today ShowDate 調用顯示日期的函數 程序運行結果為 Thedateis2004 8 1- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 面向對象程序設計 面向 對象 程序設計 ppt 課件 初中 信息技術
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://ioszen.com/p-10986191.html