OC基础第一天

FJStudent.h

/**定义一个学生类。属性有姓名和年龄*/

@interface FJStudent : NSObject{

NSString *_name;

int _age;

}

/**初始化方法*/

- (instancetype) initWithName:(NSString *) name age :(int) age{

if (self = [super init]){

_name = name;

age = age;

}

/**学习方法*/

- (void) study:(NSString *):courseName;

/**打游戏方法*/

- (void) playGame:(NSString *):gameName;

/**看电影方法*/

- (void) watchMovie:(NSString *):movieName;

@end


FJStudent.m

/**这是学生类的实现部分,就是将FJStuden.h中定义的方法进行具体的实现*/

#import "FJStudent.h"

@implementation FJStudent

+ (instancetype) studentWithName:(NNString *)name age:(int)age{

return [[self alloc]initWithName:(NNString *)name age:(int)age];

}

- (instancetype) initWithName:(NNString *)name age:(int)age{

if(self = [super init]){

_name = name;

_age = age;

}

return self;

}

- (void) study:(NSString *) courseName{

NSLog(@"%@正在玩%@",_name,courseName);

}

- (void) playGame:(NSString *)gameName{

NSLog(@"%@正在玩%@",_name,gameName);

}

- (void) watchMovie{

if (_age<18){

NSLog(@"%@不能看%@");

}else{

NSLog(@"%@可以看%@");

}

}

@end


main.m

/**以下部分就是初始化一个类的对象。然后调用实现部分FJStuden的方法实现我们预期的动作!*/

// 写程序的终极原则: 高内聚 低耦合

// High cohesion low coupling


#import <Foundation/Foundation.h>

#import "FJStudent.h"


int main(int argc, const char * argv[]) {

    @autoreleasepool {

        FJStudent *s1 = [CDStudent studentWithName:@"王大锤" age:24];

//类是对象的模板,具体实现动作必须要创建对象。


        [s1 study:@"C语言"];

//调用对象的具体方法格式为[对象名 方法名:参数]

        [s1 play:@"LOL"];

        [s1 watchJapaneseAV];

        

        FJStudent *s2 = [[CDStudent alloc] initWithName:@"李狗蛋" age:15];

        [s2 study:@"高中物理"];

        [s2 play:@"斗地主"];

        [s2 watchJapaneseAV];

    }

    return 0;

}




转载于:https://my.oschina.net/luhoney/blog/643751

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值