2 例項變數可 度與方法

2021-07-06 09:06:59 字數 2796 閱讀 6631

可見度

特點public(公有的)

例項變數可以在類的外部和內部操作

protected(受保護的,預設的)

例項變數只能在該類和其⼦類內操作

private(私有的)

例項物件只能在該類內訪問

注:所謂的內部,指的是相應類的@implementation 和@end之間

// .h檔案中

@inte***ce person : nsobject

// main函式檔案中

//@public

person * p = [[person alloc] init];

p -> _hobby = @「聽⾳樂、看電影」;

nslog(@"⼈的興趣:%@",p -> _hobby);

注意事項:

為什麼不使⽤@public?

如何在其他⽂件中訪問物件@protected修飾的例項變數?

物件方法

類方法宣告

//方法型別  返回值型別  方法名

- (double) pi;

呼叫

使用物件呼叫方法就是oc中的訊息機制

oc語言中採用特定的語言呼叫類或者例項(物件)的方法稱為傳送訊息或方法呼叫。

//格式:[類名或者物件名 方法名];

方法名

//.h 檔案

//宣告屬性

@inte***ce aodicar : nsobject

//init

-(id)initwithcolor:(nsstring *)color

lunzi:(int)lunzi

pinpai:(nsstring *)pinpai;

//.m 檔案

//init

-(id)initwithcolor:(nsstring *)color

lunzi:(int)lunzi

pinpai:(nsstring *)pinpai

//.h 檔案

//賦值

- (void)setname:(nsstring *)name;

//取值

- (nsstring *)getname;

//.m 檔案

//賦值

- (void)setname:(nsstring *)name

//取值

- (nsstring *)getname

//.h 檔案

//setter

-(void)setcolor:(nsstring *)color

lunzi:(int)lunzi//注意,這裡沒有分號

pinpai:(nsstring *)pinpai;//這裡才有分號

//getter

-(nsstring *)color;

-(int)lunzi;

-(nsstring *)pinpai;

//.m 檔案

//setter

-(void)setcolor:(nsstring *)color

lunzi:(int)lunzi

pinpai:(nsstring *)pinpai

//getter

-(nsstring *)color

-(int)lunzi

-(nsstring *)pinpai

//main函式

aodicar *car1 = [[aodicar alloc] initwithcolor:@"黑色" lunzi:4 pinpai:@"不造"];//初始化

nslog(@"%@奧迪有%d個輪子,品牌%@",[car1 color],[car1 lunzi],[car1 pinpai]);//輸出初始化的資料

[car1 setcolor:@"紅色" lunzi:4 pinpai:@"不造"];//用setter賦值

nslog(@"%@奧迪有%d個輪子,品牌%@",[car1 color],[car1 lunzi],[car1 pinpai]);//用getter取值

用於引入類,但並不引入類的屬性

ios基礎:深入理解objective-c中@class的含義

objective-c中,當乙個類使用到另乙個類時,並且在類的標頭檔案中需要建立被引用的指標時,有兩種辦法:

一種是通過#import方式引入;另一種是通過@class引入;

#import "b.h"//引入類,同時引入類屬性

@class b;//僅引入類

@inte***ce a : nsobject

@end

### instancetype和id的區

TwistedFate 例項變數可 度 法

1.例項變數可 度 protected預設是 受保護的 只能其本類或者子類去使用 一般使用 public 公開的 可以在類的外部進行使用 private 私有的 只能是本類進行使用 基本上不用 2.oc方法的方法名 首先,方法型別刪掉 再把返回值型別刪掉 再刪引數型別及引數名 刪完就是這方法的方法名...

靜態方法(變數)與例項方法(變數)

類變數 是以類中以static為修飾符的成員變數 例項變數 類中不以static為修飾符的成員變數 下面展示一些內聯 片。class student 靜態變數 1.靜態變數是常駐記憶體,程式從一開始到結束都一直占用記憶體。2.靜態變數是指接通過類名 類名.類變數 訪問的。3.靜態變數是所有物件共享的...

02 例項變數可見度 方法

一 例項變數可見度 所謂的內部,指的是相應類 implementation end之間 inte ce person nsobject 這裡不使用 public,為什麼呢?1 使用 public關鍵字,暴露了類內部的細節 2 不符合物件導向語言的三大特性之一 封裝 如何在其他檔案中訪問物件 prot...