OC_封装,继承,多态

OC封装,继承,多态

1封装

就是将一段代码装成一个整体,将内部的实例变量和方法设置访问权限

1. set方法

 1.作用:提供一个方法给外界设置成员变量值,可以在方法里面对参数进行相应过滤

 2.命名规范:

 1>方法名必须以set开头

 2> set后面跟上成员变量的名称,成员变量的首字母必须大写

 3>返回值一定是void

 4>一定要接收一个参数,而且参数类型跟成员变量类型一致

 5>形参的名称不能跟成员变量名一样

2. get方法

 1.作用:返回对象内部的成员变量

 2.命名规范:

 1>肯定有返回值,返回值类型肯定与成员变量类型一致

 2>方法名跟成员变量名一样

 3>不需要接收任何参数

3.注意细节

/*成员变量的命名规范:一定要以下划线 _开头

  作用:

  1.让成员变量和get方法的名称区分开

  2.可以跟局部变量区分开,一看到下划线开头的变量,一般都是成员变量

  */

    int _no;

    Sex_sex;

}

// sexsetget方法

- (void)setSex:(Sex)sex;

- (Sex)sex;

// nosetget方法

- (void)setNo:(int)no;

- (int)no;

 

2.继承

/*

 1.继承的好处:

 1>抽取重复代码

 2>建立了类之间的关系

 3>子类可以拥有父类中的所有成员变量和方法

 

 2.注意点

 1>基本上所有类的根类是NSObject

 */

/********Animal的声明*******/

@interface Animal : NSObject

...

/********Animal的实现*******/

@implementation Animal

...

********Dog*******/

// : Animal 继承了Animal,相当于拥有了Animal里面的所有成员变量和方法

// Animal称为Dog的父类

// Dog称为Animal的子类

@interface Dog : Animal

@end

 

@implementation Dog

@end

 

/********Cat*******/

3多态

/*

 多态

 1.没有继承就没有多态

 2.代码的体现:父类类型的指针指向子类对象

 3.好处:如果函数\方法参数中使用的是父类类型,可以传入父类、子类对象

 4.局限性:

 1>父类类型的变量不能直接调用子类特有的方法。必须强转为子类类型变量后,才能直接调用子类特有的方法

 */


// 如果参数中使用的是父类类型,可以传入父类、子类对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值