構造方法,自訂構造方法,構造方法自訂
//// main.m#import <Foundation/Foundation.h>#import "Iphone.h"int main(int argc, const char * argv[]){ /* Iphone * phone1 = [Iphone new]; phone1->_cpu = 1.5; phone1->_ram = 512; */ /*Iphone * phone = [Iphone alloc];//offcc phone = [phone init];//[0ffcc init]; */ //開闢記憶體空間,以及初始化成員變數合并一起調用 Iphone * phone = [[Iphone alloc]init];//[0ffcc init]; phone->_ram = 512; NSLog(@"%@",phone); Iphone * phone2 = [[Iphone alloc] initWithIphoneSize:IphoneSize4point0]; NSLog(@"%@",phone2); Iphone * phone3 = [[Iphone alloc] initWithIphoneSize:IphoneSize4point0 andPhoneColor:IphoneColorBlack]; return 0;}
//// Iphone.h#import <Foundation/Foundation.h>enum IphoneSize{ IphoneSize3point5,//3.5寸螢幕 IphoneSize4point0,//4.0寸螢幕 IphoneSize4point7,//4.7寸螢幕 IphoneSize5point5 //5.5寸螢幕};typedef enum IphoneSize IphoneSize;enum IphoneColor{ IphoneColorWhite, IphoneColorBlack};typedef enum IphoneColor IphoneColor;enum IphoneFlashLightStatus{ IphoneFlashLightStatusOpen, IphoneFlashLightStatusClose, IphoneFlashLightStatusAuto};typedef enum IphoneFlashLightStatus IphoneFlashLightStatus;@interface Iphone : NSObject{ @public /** 用來儲存iPhone螢幕尺寸 */ //enum IphoneSize 與IphoneSize 等價 IphoneSize _size;//用來儲存iPhone螢幕尺寸 /** 用來儲存iPhone顏色 */ IphoneColor _color;//用來儲存iPhone顏色 /** 用來儲存cpu大小 */ float _cpu; /** 用來儲存內部容量大小 */ float _ram;}/**開啟閃光燈*/-(void)openFlashLight;/**關閉閃光燈*/-(void)closeFlashLight;/**自動*/-(void)flaseLightAuto;/**拍照*/-(void) cameraWithFlashLightStatus:(IphoneFlashLightStatus)flaseLightStatus;/**根據傳入參數返回相應顏色*/-(NSString * )getColorWithIphoneColor:(IphoneColor)iphoneColor;+(NSString *)getColorWithIphoneColor:(IphoneColor)iphoneColor;//自訂構造方法//1.一定是對象方法//2.構造方法一定是init開頭-(Iphone *)initWithIphoneSize:(IphoneSize)iphoneSize;-(Iphone *)initWithIphoneSize:(IphoneSize)iphoneSize andPhoneColor:(IphoneColor)iphoneColor;@end
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。