码迷,mamicode.com
首页 > 其他好文 > 详细

OC基础 点语法的使用

时间:2015-12-21 00:12:59      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

OC基础 点语法的使用

1.创建一个Student类继承于NSObject,Student.h文件

#import <Foundation/Foundation.h>

@interface Student : NSObject
{
    NSString *_name;
    NSString *_nickName;
}

//@property定义属性
//1,它给该类声明了一个属性名+下划线的变量
//2,它给该类声明了一个getter方法和一个setter方法

//修饰符
//atomic和nonatomic
//原子性和非原子性,atomic线程安全,nonatomic线程不安全
//一般情况下使用nonatomic

//setter修饰符指定赋值时调用哪个方法来实现setter
//setter修饰符指定读取值时调用哪个方法来实现getter
@property (nonatomic,setter = setNickName:,getter = nickName) NSString *nickName;

//修饰符
//assign用来修饰基本类的
//strong或者retain是用来修饰对象指针的
//readonly只读:只声明和实现getter,不声明和实现setter方法
//readwrite可读写:声明和实现了getter和setter,默认就是readwrite
@property (assign,readonly) int age;
@property (retain,readwrite) NSString *secondName;

-(void)setName:(NSString *)name;
-(NSString *)getName;
-(void)setaaa:(NSString *)aaa;

@end

2.Student.m文件

#import "Student.h"

@implementation Student
//@synthesize在.m文件内为属性添加setter和getter方法的实现
//@synthesize nickName;

-(void)setName:(NSString *)name
{
    _name = name;
}

-(NSString *)getName
{
    return _name;
}

-(void)setNickName:(NSString *)nickName
{
    _nickName = nickName;
    self.nickName = nickName;
}

-(void)setaaa:(NSString *)aaa
{
    
}

3.创建Teacher类继承于NSObject,Teacher.h文件

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

@interface Teacher : NSObject

@property Student *stu;

@end

Teacher.m文件

#import "Teacher.h"

@implementation Teacher

@end

 

4.点语法的使用

        Student *stu = [[Student alloc] init];
        [stu setName:@"zhangsan"];
        NSString *name = [stu getName];
        NSLog(@"%@",name);
        
        //属性名在=的左侧,代表赋值,实际是调用类的setter方法
        stu.nickName = @"xiaozhang";
        //属性名在=的右侧,代表读取值,实际是调用类的getter方法
        NSLog(@"%@",stu.nickName);
        
        Teacher *tea = [[Teacher alloc] init];
        tea.stu = stu;

 

OC基础 点语法的使用

标签:

原文地址:http://www.cnblogs.com/DWdan/p/5062172.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!