//
// main.m
// 第一个OC类-方法
//
// Created by Caoxia on 15/11/10.
// Copyright © 2015年 Caoxia. All rights reserved.
//
/*
事物名称: iPhone
属性: 颜色, 型号, cpu, 尺寸 == 成员变量
行为:打电话, 发短信, 上网, 获取本机信息 == 成员方法
*/
//到目前为止,我们的访问机制都没有了利用封装的机制,因为所有的成员变量都是可以在外界进行访问,我们最好实现的方式是通过setter和\
getter
#import <Foundation/Foundation.h>
//这里是定义enum,存储手机的颜色,0表示黑色,1表示白色,2表示粉红
//---------------------------------------------华丽的分割线-----------------------------------------------
typedef enum color
{
KcolorBlack,
KcolorWhite,
KcolorPink,
KcolorGold
} phoneColor;
//---------------------------------------------华丽的分割线-----------------------------------------------
//---------------------------------------------华丽的分割线-----------------------------------------------
@interface iPhone : NSObject //在手机类定义三个成员变量
{
@public
float _inches;
phoneColor _myPhonecolor; //这里将结构体当做iPhone的一个属性
NSString *_name;
}
- (void)describeMyPhone;
@end
@implementation iPhone
- (void)describeMyPhone
{
if (_myPhonecolor == KcolorBlack) {
NSLog(@"我手机的颜色是黑色的");
}else if (_myPhonecolor == KcolorWhite)
{
NSLog(@"我手机的颜色是白色的");
}else if (_myPhonecolor == KcolorGold)
{
NSLog(@"我手机的颜色是粉红色的");
}else if (_myPhonecolor == KcolorPink)
{
NSLog(@"我手机的颜色是金色的");
}else
{
NSLog(@"滚犊子");
}
NSLog(@"手机是%f英寸的,手机的名字叫%@",_inches,_name);
}
@end
//---------------------------------------------华丽的分割线-----------------------------------------------
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
iPhone *xiaomingiPhone = [iPhone new];
xiaomingiPhone->_name = @"魔性iPhone";
xiaomingiPhone->_myPhonecolor = KcolorWhite;
xiaomingiPhone->_inches = 4.7;
[xiaomingiPhone describeMyPhone];
}
return 0;
}