類通常分為以下兩個部分
類的使用方式
當使用類時,不需要關心其實現細節
當建立乙個類時,才需要考慮其內部實現細節
例:使用手機時,只需要知道如何發簡訊,打**,拍照等待即可,不需要關心手機是如何開發出來的。
手機開發工程師就需要考慮手機的內部實現細節,如硬體細節和軟體細節
封裝的基本概念
根據日常生活中的經驗:並不是類的每個屬性都是對外公開的
屬性如:女孩子不希望外人知道自己的年齡和身高
行為如:一些男孩子不希望別人知道自己會尿床
而一些類的屬性是對外公開的
如:人類的姓名,學歷,國籍等
因此,需要在類的表示法中定義屬性和行為的公開級別
類似檔案系統中檔案的許可權
c++中類的封裝
成員變數
c++中用於表示類屬性的變數
成員函式
c++中用於表示類的行為的函式
在c++中可以給成員變數和成員函式定義訪問級別
public
成員變數和成員函式可以在類的內部和外界訪問和呼叫
private
成員變數和成員函式可以在類的內部訪問和呼叫
此處有example8-1.cpp
類成員的作用域
類成員的作用域都只能在類的內部,外部無法直接訪問
成員函式可以直接訪問成員函式和呼叫其他成員函式
類的外部可以通過類變數訪問public成員
類成員的作用域與訪問級別沒有關係。
(c++中用struct定義的類的所有成員預設為public)
類的真正形態
struct在c語言中已經有了自己的含義,只能繼續相容
在c++中提供了新的關鍵字class用於定義類
class和struct的用法是完全相同的
class和struct有什麼區別?
在struct定義類時,所有成員預設屬性為public
在用class定義時,所有成員的預設屬性都是private
類的精華在於封裝
將實現細節和使用方式分離
c++中童工public和private實現類的封裝
public成員可以通過變數被外界訪問
private成員只能夠在類的內部使用
類的定義和實現可以分開到不同的檔案中
c 筆記(八) 類
類,物件,類成員 字段 方法 用類建立乙個物件,用new運算子,類裡面用來描述特徵的變數稱為這個類的字段 car car new car 使用物件呼叫欄位時,用點運算子得到欄位並賦值,如果在類外部使用欄位時,字段一定用public修飾 red 100.5 bmw 用點運算子點出來的成員,前面如果是 ...
Dart基礎語法 八 類(中)
本節主要記錄一下dart中關於類的使用 getters 和 settersclass rect void main 可覆寫的操作符 即使用關鍵字operator重新定義已有操作符的實現邏輯 如list就重寫了 以下是支援覆寫的操作符 import dart math class rect void ...
PHP類例項教程(八) 類的繼承
繼承是物件導向最重要的特點之一,就是可以實現對類的復用。通過 繼承 乙個現有的類,可以使用已經定義的類中的方法和屬性。繼承而產生的類叫做子類。被繼承的類,叫做父類,也被成為超類。php是單繼承的,乙個類只可以繼承乙個父類,但乙個父類卻可以被多個子類所繼承。從子類的角度看,它 繼承 inherit e...