05-05、對象作為返回值類型

注意:通過new創建出來的的局部對象變量存儲在堆內存中,堆中的數據不會自動釋放。而存儲在棧內存中的局部變量會自動釋放掉(比如C語言中的基本數據類型的變量)

#pragma mark - 商店
@interface Shop : NSObject

// 買槍
+ (Gun *)buyGun:(int)money;

// 買彈夾
+ (Clip *)buyClip:(int)money;
@end

@implementation Shop


+ (Gun *)buyGun:(int)money
{
// 1.創建一把槍
Gun *gun = [Gun new]; // 通過new創建出來的對象存儲在堆中, 堆中的數據不會自動釋放
// 2.返回一把槍
return gun;
}
+ (Clip *)buyClip:(int)money
{
Clip *clip = [Clip new];
[clip addBullet];
return clip;
}

@end
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 從三月份找實習到現在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂視家的研發崗...
    時芥藍閱讀 42,366評論 11 349
  • JVM內存模型Java虛擬機(Java Virtual Machine=JVM)的內存空間分為五個部分,分別是: ...
    光劍書架上的書閱讀 2,590評論 2 26
  • Java8張圖 11、字符串不變性 12、equals()方法、hashCode()方法的區別 13、...
    Miley_MOJIE閱讀 3,731評論 0 11
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,765評論 18 399
  • 《防狼手冊》下半部,由于加入了真實案例,寫得很長,還沒寫完。還剩最后一點。 白天找工作,只能有...
    飛橋野煙閱讀 278評論 4 2