iOS:Objective-C学习入门随手记

2016年05月12日 iOS 暂无评论 阅读1673次

方法前的 + 代表 静态方法。无需实例化该类即可调用该方法

方法前的 - 代表 动态方法。必须实例化该类才可调用该方法


object-c:bean类及其初始化


面向对象思想中很重要的一点就是万物即对象。
既然是对象则一般就会有属性方法等。
因此,我们有必要为常用到的对象创建一个bean的类。

在object-c中,创建一个类很简单。下面是以一个市场可能具有的相关属性作为对象的bean类。

@interface MarketBean : NSObject {
    NSString *name;
    NSString *type;
    NSString *location;
}
- (id)initWithName:(NSString *)name Type:(NSString *)type Loction:(NSString *) loc;
+ (id)marketWithName:(NSString *)name Type:(NSString *)type Loction:(NSString *) loc;
@end

@implementation MarketBean

-(id)initWithName:(NSString *)name Type:(NSString *)type Loction:(NSString *) loc {

    if (self = [super init]) {
        _name = name;
        _type = type;
        _location = location;
    }
    return self;
}
@end



Object-C的便利构造器

还有一种被称为便利构造器的构造方法是更常用的更简单的。
在初始化方法的基础上进行了封装,即封装了对象的创建过程。便利构造器是“+”号方法,返回 本类型 的实例,方法名以类名开头。根据需求不同,可以没有参数、或多个参数。
内部实现,封装了alloc和初始化方法。

+(id) marketWithName:(NSString *)name Type:(NSString *)type Location:(NSString *)loc {
    id obj = [[MarketBean alloc] initWithName:name Type:type Location:loc];
    [obj autorelease];
    return obj;
}


注意[obj autorelease]一句,我在xcode7(iOS9)下用的时候,有编译错误的提示。
ARC

分享本文至:

WRITTEN BY

avatar
本文标签:iOSobjective-c
看了本文是不是觉得很赞,那就赶紧点击下面按钮分享给身边的朋友吧!

欢迎留言




用户登录

sitemap