objective-c 類和對象

來源:互聯網
上載者:User

標籤:

 

0.NSString的簡單使用

1.類的封裝,資料保護;

2.setter和getter方法;

3.self,supper,id

4.初始化方法;

5.類方法

 

=========================================================

 

0、NSString簡單使用

 

NSString 是oc字串類; 

 

@“….” 字串對象; 

 

NSString *s = @“我是一個字串”;

 

 

 

1、類中執行個體變數的許可權

 

需求:訪問成員變數;

 

1)類的封裝性, 資料的保護

2) 三種許可權和預設的許可權

@public,  @protected,   @private

OC中預設預設是  @protected

 

 

【變數許可權】

dog:name,age,weight

 

 

特殊方法:

【set方法與get方法】

 

set方法作用: 修改/ 設定成員變數;

get方法作用: 擷取成員變數值;

 

 

命名:

set方法:  - (void) setXxxx:(參數類型)參數名; 

get方法:   -(傳回值類型)getXxxx;

 

【test1】

 

練習: 

 

人類:  名字 NSString *,age,學號;    

1.set方法設定成員變數

2.get方法得到每個成員變數的值

 

 

 

【self,supper,id】

    

1)  id類型, 是指標類型;

id: 泛型對象指標,與C語言void *類似 

id類型可以指向任意物件類型, 不需要強制裝換,可以直接使用;

 

【id樣本】

 

 

 

練習:

【複合類設計】

冰箱IceBox儲存物品 (id)

 

冰箱類: IceBox

大象類: Elephant

人類:     Person

狗類:     Dog

 

冰箱開啟門;

冰箱儲存物品id, 列印出物品類型;

冰箱關閉;

 

 

===============================

 

需求:如何在方法裡面 調用其它方法?

 

執行個體方法裡的self和supper?

1) super

super: 用於調用父類方法的關鍵字;//暫時瞭解 後面會講

 

2)  self

self: 指向當前對象的指標,每個對象裡都有一個指向當前對象的指標,這個指標就是self;

類內的方法進行相互調用可以用self

 

 

 

5.3. 初始化方法

 

 

【初始化方法的寫法】 - (id)init;

【初始化方法的作用】  建立對象時初始化成員變數; 

 

 

初始化方法格式    

 

 1、不帶參數的構造方法

 - (id)init;        

 

 

 2、帶參的構造方法

 - (id)initWithXxxx:(參數類型)參數1 [標籤]:(參數類型)參數2....;

 

 

練習:

 

1.建立一條公路,成員變數有長度和寬度,編寫關於長度和寬度的構造方法和setter getter方法。

構造方法: 需要不帶參數和帶參數兩個版本,不帶參數預設長度為1000,寬度為1;

 

 

【Road】

 

 

 

2.有一個汽車類,價格price,品牌type;

  三個初始化方法; 

        通過價格建立並初始化汽車  

  通過品牌建立並初始化汽車 

  通過價格和品牌建立並初始化汽車 

【Car】

 

 

 

 

  3.5 類方法    

 

【dog】

類方法作用:

【通過類方法建立一個對象】

 

 

 

// 成員方法(執行個體方法) 

// 類方法 :                           

 

 

 

 

 

 

 

練習:

1.建立一個明信片類Card

屬性:

姓名 

單位 

電話號碼

方法:

構造方法  (帶參數和不帶參數)

 

通過類方法建立對象;(帶參數和不帶參數)

 

顯示資訊方法:

 

 

 

 

 

 

 

作業:

1、建立一個銀行賬戶的類

屬性:

賬戶號碼

密碼

儲存金額

儲存年限

方法:

構造方法

設定,賬戶號碼,密碼

存款

設定年限

取款

 

 

 

2.有一個分數的類,含有分子和分母,要實現構造、設定取值方法,要實現兩個分數的+、

-、*、/ 運算;

 

objective-c 類和對象

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.