亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

object-c中的點調用和權限

發布時間:2020-07-30 23:47:46 來源:網絡 閱讀:564 作者:Mr_Dai 欄目:開發技術

1.如果你學過JAVA語言的的話,點調用的經常使用到的。

在JAVA中創建一個學生類:

publicclass student {

private String name;

private String age;

publicvoid setName(String name){

this.name  = name;

}

public String getName(){

returnname;

}

}

如果我們要調用student中的setName方法直接使用創建student.setName("張三")就可以使用setName方法,由于在JAVA中我們的類的屬性通常都是私有的不可以直接調用的。所以要調用set方法設置值.


2.上面的例子只是回顧下什么叫做點調用:Object-c例子:

//-------------------------------------------------------------定義文件

#import <Foundation/Foundation.h>

@interface what : NSObject{

@public  

int _age ;

@public

int _number;


}

-(void) setAge:(int) newAge;

-(int) age;

-(void) setNumber:(int) newNumber;

-(int) number;

@end


//-------------------------------------------------------------實現文件

#import "what.h"


@implementation what

-(int)age{

NSLog(@"ageget方法");

return_age;

}

-(void)setAge:(int)newAge{

NSLog(@"ageset方法");

_age = newAge;

}


-(int)number{

NSLog(@"numberget方法");

return_number;

}


-(void)setNumber:(int)newNumber{

NSLog(@"numbeget方法");

_number = newNumber;

}

@end

//-------------------------------------------------------------main方法

#import <Foundation/Foundation.h>

#import "what.h"

int main(int argc, constchar * argv[])

{

@autoreleasepool {

what *my  = [[whatalloc] init];

       //這里調用了setAge

       my.age = 20;

       //這里調用了setNumber

       my.number = 100;

       //這里調用了get方法

       NSLog(@"my age is %i;and my number is %i",my.age,my.number);


   }

return0;

}

------------------------------------------------------------------

當我們運行上面的程序后會打印:

2014-04-15 23:04:51.400 點調用[588:303] ageset方法

2014-04-15 23:04:51.402 點調用[588:303] numbeget方法

2014-04-15 23:04:51.402 點調用[588:303] ageget方法

2014-04-15 23:04:51.402 點調用[588:303] numberget方法

2014-04-15 23:04:51.403 點調用[588:303] my age is 20;and my number is 100

------------------------------------------------------------------

從打印的結果來看,我們的Objec-c在使用點調用的時候,調用的是get或者set方法。

把打印的代碼修改一下:


NSLog(@"my age is %i and my number is %i",my->_age,my->_number);


打印結果為:

------------------------------------------------------------------

2014-04-15 23:08:11.194 點調用[632:303] ageset方法

2014-04-15 23:08:11.204 點調用[632:303] numbeget方法

2014-04-15 23:08:11.205 點調用[632:303] my age is 20 and my number is 100

------------------------------------------------------------------

從上面的打印可以看出我們沒有調用get方法。



3.這里我要補充一下,這里我們使用了到了Object-c中的權限關鍵字:@public,

Object-c中權限有3種:

@public:任何類都可以方法

@protected:子類可以訪問

@private:本類可以訪問

在Object-c中默認的權限是@protected,也就是說子類可以訪問。



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武胜县| 芦溪县| 长汀县| 页游| 信丰县| 汝阳县| 盈江县| 图片| 寻甸| 丰原市| 丰都县| 石狮市| 霍林郭勒市| 卫辉市| 虹口区| 台江县| 广平县| 庆云县| 屏东市| 宁夏| 北海市| 鹤岗市| 莆田市| SHOW| 东光县| 鄄城县| 隆回县| 化隆| 花垣县| 威宁| 金华市| 宜良县| 蓝田县| 沾化县| 淳安县| 大洼县| 通化县| 城口县| 即墨市| 辽宁省| 兰坪|