day01 方法的宣告和實現

2021-10-09 21:02:32 字數 2573 閱讀 2188

/*1 定義乙個類

分為宣告和實現

@inte***ce 類名 :nsobject

方法的宣告表示功能

@end

@implementation 類名

@end

2一類食物不僅有相同的特徵還有相同的行為

行為就是功能。c語言中使用函式來表示乙個功能

oc使用方法來表示乙個功能

方法函式都表示乙個功能

3 無引數方法

1)宣告

位置。在inte***ce大括號的外面

2)語法

-(返回值型別)方法名稱;

-(void)run;

表示宣告了乙個無返回值無引數的方法,方法名字叫run

3)實現的方法

將方法宣告拷貝到@implementation之中去掉分號,增加大括號 將方法實現寫在**中

3。 呼叫

a  方法是無法直接呼叫的。因為類無法直接使用 必須先建立物件

這個物件就有類中的屬性和方法了,物件就可以呼叫方法了

b 呼叫物件的方法

[物件名 方法名];

**:person *p =[person new];

[p run];

4 帶乙個引數的方法

1)宣告

a 位置。在inte***ce大括號的外面

2)語法

-(返回值型別)方法名稱:(引數型別)行參的名稱;

-(void)eat:(nsstring *)foodname;

定義了乙個方法 這個方法沒有返回值

方法名字叫eat

這個方法有乙個引數型別為nsstring *。名字為foodname

3)實現的方法

將方法宣告拷貝到@implementation之中去掉分號,增加大括號 將方法實現寫在**中

3。 呼叫

a  方法是無法直接呼叫的。因為類無法直接使用 必須先建立物件

這個物件就有類中的屬性和方法了,物件就可以呼叫方法了

b 呼叫物件的方法

[物件名 方法名:實參];

**:person *p =[person new];

[p eat:花生];

方法頭裡面的資料型別全要用小括弧括起來

-(返回值型別)方法名稱:(引數型別)引數名稱;

5 多個引數的方法

1 宣告

a 位置

在inte***ce大括號的外面

b語法-(返回值型別)方法名稱:(引數型別)行參的名稱 :(引數型別)行參的名稱 :(引數型別)行參的名稱;

-(int)sum:(int ) num1 :(int ) num2;

表示宣告了乙個方法 這個方法的返回值是int型別的

方法的名稱叫sum

兩個引數 都int型別

實現位置。  將方法宣告拷貝到@implementation之中去掉分號,增加大括號 將方法實現寫在**中

呼叫『[物件名 方法名:實參:實參];

[p sum:1 :2];

6 帶引數方法宣告的規範

如果方法只有乙個引數 要求最好這個方法的名字叫 ***with:

eateatwith***

eatwithfood

這樣寫呼叫方法時,看起來像乙個完整的語句 提高**的可讀性

2 如果方法有多個引數

-(返回值型別)方法名:(引數型別1) 引數名字1 and:(引數型別2) 引數名字2;

-(int)sumwith:(int ) num1 and:(int ) num2;

//可讀性更強

-(int)sumwithnum1:(int) num1 andnum2:(int) num2;

使用int sum2 = [p sumwith: 1 and:4 ];

nslog(@"sum2 = %d",sum2);

詳細寫法

-(返回值型別)方法名whit引數名1:(引數型別1) 引數名字1 and引數名字2:(引數型別2) 引數名字2;

*/#import

@inte***ce person :nsobject

-(void)run;

-(void)eatwith:(nsstring *)foodname;

//計算兩個函式的值

-(int)sum:(int ) num1 :(int ) num2;

-(int)sumwith:(int ) num1 and:(int ) num2;

-(int)sumwithnum1:(int ) num1 andnum2:(int ) num2;

@end

@implementation person

-(void)run

-(void)eatwith:(nsstring *)foodname

-(int)sum:(int ) num1 :(int) num2

-(int)sumwith:(int ) num1 and:(int ) num2

-(int)sumwithnum1:(int ) num1 andnum2:(int ) num2

@end

int main(int argc, const char * ar**)

}

Objective C( 三 方法的宣告與實現)

oc方法的宣告與實現 oc方法的宣告在 inte ce中 大括號外 end上面 oc方法的實現在 implementation 中 end上面 oc方法中,乙個引數對應乙個冒號 方法名 例 fangfaming 冒號也是方法名的一部分 返回值型別 方法名 引數名 引數型別 引數 引數名 引數型別 引...

Day28 方法的過載

過載就是在乙個類中,有相同的函式名稱,但形參不同的函式 方法的過載的規則 實現理論 方法名稱相同時,編譯器會根據呼叫方法的引數個數 引數型別等去逐個匹配,以選擇對應的方法,如果匹配失效,則編譯器報錯 package com.pab.method public class demo03 方法的過載 p...

DAY7 方法的呼叫

1,方法的定義 訪問修飾符 返回值 方法名 引數列表 方式一 呼叫方法 物件名.method1 方式二 呼叫靜態方法 static 修飾的 string s abc char c method1 s s將賦值給 方法的形參 str 那麼方法執行的str有值 c 就是方法呼叫後的返回值1,方法的引數是...