OC_可见度和方法(设置器.访问器.赋值语句.交叉文件)

一.成员变量的可见度

 1.几种可见度关键字
        如果没写可见度,默认是被保护的,被保护的成员变量可以在当前类及  
        其子类来使用
 (1) @public的级别是最低的,都可以用对象->的方式找到成员变量,不安全
 (2) @protect
 (3) @private 私有的:只能当前的类使用,使用范围很小
 (4) @package 这个是系统一些文件来使用,系统来用,如果以后看见了直接
              跳过就行
2.方法
       前述:方法有两种---加号方法,称为类方法这种方法一般类来使用,比
                              如alloc
                   ---减号方法,称为实例方法,一般对象来调用,比如我
                              们自己写的sayHi
    (1)说明事项: 
          设置器与访问器都是针对一个成员变量进行只能存储和读取,当对多个成员变量进行操作的时候,称为赋值语句
          对成员变量的赋值语句,只要是有参数就一定加冒号,冒号的作用相当于标识参数,方法名的冒号也不能省略
          在调用方法的时候我们通过参数形容词知道对应 要填的参数,参数名是在方法实现的时候用的    如赋值等
       -(void)setStuName:(NSString *)stuName ;
       如果写声明,但是没实现会在.m文件里出现警告,告诉我们应该把方法补全
    (2)赋值语句
         -(void)setName:(NSString *)name
                    age:(NSInteger)age;
       实现部分
         -(void)setName:(NSString *)name
                    age:(NSInteger)age
         {
             _name=name;
            _age=age;
         }
(2)设置器
    单个设置变量
      -(void)setStuName:(NSString *)stuName;
      -(void)setStuAge:(NSInteger)stuAge;
      -(void)setStuHonny:(NSString *)stuHonny;
    实现部分:
      -(void)setStuName:(NSString *)stuName
      {
          _stuName=stuName;
      }
     -(void)setStuAge:(NSInteger)stuAge
     {
         _stuAge=stuAge;
     }
    -(void)setStuHonny:(NSString *)stuHonny
    {
        _stuHonny=stuHonny;
    }
(3)访问器
     -(NSString *)stuName;
     -(NSInteger)stuAge;
     -(NSString *)stuHonny;
   实现部分:
     -(NSString *)stuName
     {
       return _stuName;
     }
    -(NSInteger)stuAge
    {
      return stuAge;
    }
   -(NSString *)stuHonny
   {
     return stuHonny;
   }

交叉引入

定义两个类,分别在对方的.h文件中引入头文件了
1.a的.h文件:
#import <Foundation/Foundation.h>
#import "B.h"
//交叉引入头文件
{
    B *_b;
}
@end
2.a的.m文件没有变化
3.#import <Foundation/Foundation.h>
  #import "A.h"
  @class A;
    //@class用它可以防止交叉引入头文件的问题,系统会把A当成是一个已经存在的类来使用,不会把A.h 里的内容进行拷贝,就是用了一下A类的名,其他不做任何检测
  @interface B : NSObject
  {
    A *_a;
  }
  @end
4.b的.m文件没有变化
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值