iOS建立物件的2種方式

2021-06-18 23:58:13 字數 591 閱讀 7660

1、建立物件:①、nsstring *mystring=[nsstring string];呼叫了自己類的string方法,建立的是乙個自動釋放的物件(autorelease)的物件;②、手工建立物件:nsstring *mystring=[[nsstring alloc] init];先呼叫自己的alloc方法,分配記憶體及例項化乙個物件。而第二個就是呼叫新建立的物件的init方法,建立例項變數,物件初始化。

2、記憶體管理:上面的方法①建立的物件貌似可以自動釋放掉,但是方法②是手工建立的物件,必須手工釋放掉:nsstring *mystring=[[nsstring alloc] init];[mystring release];可以認為在當前函式結束時自動釋放物件。

3、一般在呼叫了乙個nil物件的方法時,若該方法有返回值則會返回nil值,不會出錯。self

.caption =

nil;

可以這樣做是因為當我們將nil賦值給乙個例項變數,設定器(setter)會釋放舊物件並且保留(retain)nil物件。這種做法對於dealloc來說更好一些,因為這樣做避免了讓變數指向乙個隨機的資料,而這個資料又恰好是另外乙個物件。如果直接caption = nil;則會出現記憶體洩露問題。

建立物件的6種方式

物件 無序的屬性的集合,key 字串 不重複 value 任何資料型別 表現方式 對映 賦值 1 new object var x age var obj newobject obj.name gao obj.x 18 字串 obj x 16 變數 console.log obj 字面量 var x...

建立物件的五種方式

建立物件的五種方法 物件字面量 var person1 工廠模式 1 var person1 8 建構函式模式 var person1 原型模式 var person1 組合模式 function person name,age,job person.prototype var person1 ne...

JavaScript物件建立的九種方式

1 標準建立物件模式 var person new object person.name nicholas person.age 29 person.job software engineer person.sayname function 2 字面量模式 var person 3 工廠模式 fun...