oc32--构造方法1
生活随笔
收集整理的這篇文章主要介紹了
oc32--构造方法1
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//
// Person.h#import <Foundation/Foundation.h>@interface Person : NSObject@property int age;
@end //
// Person.m#import "Person.h"@implementation Person/*
// 重寫init方法, 在init方法中初始化成員變量
// 注意: 重寫init方法必須按照蘋果規定的格式重寫, 如果不按照規定會引發一些未知的錯誤
// 1.必須先初始化父類, 再初始化子類
// 2.必須判斷父類是否初始化成功, 只有父類初始化成功才能繼續初始化子類
// 3.返回當前對象的地址
- (instancetype)init
{// 1.初始化父類// 只要父類初始化成功 , 就會返回對應的地址, 如果初始化失敗, 就會返回nil// nil == 0 == 假 == 沒有初始化成功self = [super init];// 2.判斷父類是否初始化成功if (self != nil) {// 3.初始化子類// 設置屬性的值_age = 6;}// 4.返回地址return self;
}*//*
- (instancetype)init
{self = [super init]; // self == nil == 0if (self) {// 初始化子類_age = 6;}return self;
}*/
- (instancetype)init
{
// self = [super init];// 注意: 不要把 = 號寫為 ==// 一定要將[super init]的返回值賦值給selfif (self = [super init]) {// 初始化子類_age = 6;}return self;
}@end //
// main.m
// 構造方法基本概念#import <Foundation/Foundation.h>
#import "Person.h"int main(int argc, const char * argv[]) {/*在OC中init開頭的方法, 我們稱之為構造方法構造方法的用途: 用于初始化一個對象, 讓某個對象一創建出來就擁有某些屬性和值*/Person *p = [[Person alloc] init];
// p.age = 6;NSLog(@"%i", p.age);Person *p2 = [[Person alloc] init];
// p2.age = 6;NSLog(@"%i", p2.age);Person *p3 = [[Person alloc] init];
// p3.age = 6;NSLog(@"%i", p3.age);return 0;
}
?
總結
以上是生活随笔為你收集整理的oc32--构造方法1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚂蚁庄园课堂问题人体最大的器官是什么 人
- 下一篇: 批处理修改IP