A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


创建一个学生类Student ,通过重写构造方法实现创建学生对象的时候 默认的年龄值指定的年龄


Student.h文件

#import <Foundation/Foundation.h>
#import "Person.h"

@interface Student : NSObject
@property(nonatomic,assign) int age;
-(instancetype)initWithAge:(int)age;
+(instancetype)studentWithAge:(int)age;
@end


Student.m文件

#import "Student.h"

@implementation Student

-(void)dealloc{
    NSLog(@"s dealloc");
    [super dealloc];
}
-(instancetype)initWithAge:(int)age{
    //1 先初始化父类,并且判断是否初始化成功
    if (self = [super init]) {
        //初始化子类
        _age =age;
    }
    //返回self
    return  self;
}
+(instancetype)studentWithAge:(int)age{
    return [[[self alloc] initWithAge:age] autorelease];
}
@end


main.m文件

#import <Foundation/Foundation.h>
#import "Student.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Student *s = [[Student alloc]initWithAge:18];
        NSLog(@"%d",s.age);
        [s release];
   
   
    //快速的创建Student对象,并且初始化年龄
    //1)定义类方法
    //2)类方法有参数,传递一个年龄
    Student *s2 =   [Student  studentWithAge:20];
    NSLog(@"%d",s2.age);
    }
    return 0;
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马