OC物件導向和類

2021-06-22 16:53:21 字數 1548 閱讀 8079

1、物件導向和面向過程

物件導向,簡稱oop,它是以事物為中心,參與事件的事物是核心,完成事件只是事物的乙個小任務。面向過程,簡稱opp,它是以事件為中心,事件是核心,列出了完成事件的每乙個步驟,一步一步完成。也就是物件導向側重於從問題在尋找客體、客體的作用。客體間的關係即「誰」、「做什麼」、「怎麼做」,面向過程側重於問題的分解即「事件怎麼做」。

2、類和物件

(1)類是一組具有相同(特徵)屬性和行為(功能)的事物的集合(抽象)。物件就是類的具體實現。世間萬物皆物件。類其實就是一種資料型別,它的變數就是物件。

(2)類的定義

在oc中,類的定義分兩部分:介面部分和實現部分;

介面部分(inte***ce):宣告了類與父類的名字、方法是例項變數。介面檔案以.h為字尾。

例如 student.h        介面檔案

@inte***ce student : nsobject      //nsobject是繼承的父類

//是方法的宣告

-(void) sayhi;   //打招呼的方法

-(void) eat;       //吃飯的方法

-(void) walk;    //走的的方法

實現部分(implementation):包含了方法的實現,真正意義上定義了類的行為。實現檔案以.m為字尾。

注意:編譯器不要求將介面檔案和實現檔案的**放在不同的檔案中。每乙個類用一對介面/實現原始檔是乙個良好的習慣。乙個檔案中可以宣告和定義多個類。

如果類之間沒有什麼關係,最好不要把不同的類放在同乙個檔案書寫。

例如    實現檔案

#import

@implementation student

//以下是方法的實現

-(void) sayhi   //打招呼的方法

-(void) eat       //吃飯的方法

(3)物件的建立和使用

1>物件的建立

記憶體分配:為物件動態的分配記憶體位址。

初始化:在記憶體中填上的初始值。

例如:student * stu =[[student alloc] init];

說明:向類傳送alloc訊息,就是為該類分配一塊足夠大記憶體,用於存放例項變數,同時初始化記憶體,填上的初始值。

2>物件的賦值使用

例如://main函式

#import "student.h"

int main (int argc, const char * argv)

->賦值必須例項變數的修飾符是@public。例項變數的修飾符還有@protected和@private,系統預設例項變數的型別是@protected,對於這兩種型別的例項變數,我們需要呼叫方法為其賦值或者取值。

廣義上講為例項變數賦值的方法成為設定器,取出例項變數的方法成為訪問器。

設定器、訪問器說明:

1. 設定器命名: set+首字母大寫的例項變數名  如:-(void)setage:(int)newage

2. 設定器引數不要與例項變數重名。

3. 讀取器:與例項變數名同名,並且返回型別與例項型別一致。

缺點:例項變數越多,編寫就越麻煩。

OC 物件導向,類和物件

面向過程,c語言是一門面向過程語言,關注的是如何解決問題,需要哪些步驟 物件導向,oc是一門物件導向語言,關注的是解決問題需要哪些物件。可以對類進性操作也可以對物件進行操作,即方法,同乙個方法可以應用於不同多個物件。classorinstance method 對類和例項應用方法 inte ce 部...

OC1 物件導向,類和物件

1 self 指的是類物件本身,super是父類物件本身。2 self 用來呼叫本類物件的方法,super 呼叫父類的方法。2.定義類 兩部分介面和實現部分 1 冒號表示,是繼承關係,nsoject是所有類的父類。2 方法宣告 是例項方法,是類方法。方法名主要要 方法型別,返回型別,方法名,引數型別...

OC學習總結之物件導向和類

objective c是c語言的母集合,它的原意就是在原始的c語言的主體上加入物件導向的特性。1 物件導向和面向過程 物件導向和面向過程是程式設計的兩種思考方式。物件導向,簡稱oop,它是以事物為中心,參與事件的事物是核心,完成事件只是事物的乙個小任務。面向過程,簡稱opp,它是以事件為中心,事件是...