ios面試題整合4

2021-07-14 04:19:49 字數 3180 閱讀 3144

1.回答person的retaincount值,並解釋為什麼

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

self.person = per;

2.這段**有什麼問題嗎:

@implementation person

- (void)setage:(int)newage

@end

正確寫法

_age = [newage retain];

} 死迴圈(擴充套件:知道如何正確寫setter和getter方法)

3.這段**有什麼問題,如何修改

for (int i = 0; i < somelargenumber; i++)

在for迴圈裡新增自動釋放池(擴充套件:常量區的retaincount是怎麼個情況)

4.擷取字串」20 | 中,」|」字元前面和後面的資料,分別輸出它們。

componentsseparatedbystring

nsstring * str = @「20|;

for(nsstring*s in [str componentsseparatedbystring])

5.用obj-c寫乙個氣泡排序 1

2

3

4

5

6

7

8

for(int i = 0, i < arr.count - 1,i++)}}

6.簡述你對uiview、uiwindow和calayer的理解

7.寫乙個完整的**,包括宣告,實現

注意手寫的準確性

8.分析json、xml的區別?json、xml解析方式的底層是如何處理的?

9.viewcontroller 的 didreceivememorywarning 是在什麼時候被呼叫的?預設的操作是什麼?

10.物件導向的三大特徵,並作簡單的介紹

封裝、繼承、多型

多型:父類指標指向子類物件。兩種表現形式:重寫(父子類之間)和過載(本類中)

oc的多型體現是:重寫,沒有過載這種表現形式

舉例說明:

12

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

@inte***ce parent : nsobject//父類

- (void)******call;

@end

@inte***ce child_a : parent//子類  child_a

@end

@implementation child_a

- (void)******call

@end

@inte***ce child_b : parent//子類child_b

@end

- (void)******call

@end

然後,我們就可以看到多型所展示的特性了:

12

3

4

parent * pa=[[child_a alloc] init];// 父類指標指向子類child_a物件

parent * pb=[[child_b alloc] init];//父類指標指向子類child_b物件

[pa ******call];// 顯然是呼叫child_a的方法

[pb ******call];// 顯然是呼叫child_b的方法

在oc中常看見的多型體現:

12

3

4

5

6

- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath

(uitableviewcell *)指向cell子類物件

11.重寫乙個nsstring型別的,retain方式宣告name屬性的setter和getter方法

1

2

3

4

5

6

7

8

-(void)settetname:(nsstring *)name

_name = [name retain];

}

-(nsstring *)gettername}

returnmodel;

}

25.說說響應鏈

從手指觸控螢幕的地方的最上層控制項是第一響應者,事件會沿著響應鏈一直向下傳遞直到被接受並作出處理

iOS開發面試題大全 4

簡述你對uiview uiwindow和calayer的理解 uiview繼承於uiresponder,uiresponder繼承於nsobject,uiview可以響應使用者事件。calayer繼承於nsobject,所以calayer不能響應事件。uiview構建介面,uiview側重於對內容的...

iOS 面試題(六)

回答person的retaincount值,並解釋為什麼 person per person alloc init self.person per 1 或者2 看物件用什麼屬性修飾,person類物件在建立的時候引用計數加1,若用 assign類不會使引用計數加1的屬性修飾 person的retai...

iOS 面試題(九)

objective c有私有方法麼?私有變數呢?如多沒有的話,有沒有什麼代替的方法?oc中沒有私有方法,有私有變數 私有方法可以用category 類目 extension 延展 來代替 2 import include和 class有什麼區別 include 用於系統自帶的標頭檔案的引用,編譯器會...