码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发之oc--继承

时间:2015-02-24 13:46:52      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

面向对象的三大特性

1)封装(set方法和get方法,掌握)

2)继承(掌握)

3)多态(理解概念即可)

 (一)继承(一种语法):是用在类与类之间,代表(两个)类之间的关系.

1.继承的使用场合

想要获取得某个类所有成员变量和方法,要实现什么,就通过继承.

 1> 当两个类拥有相同属性和方法的时候,就可以将相同的东西抽取到一个父类中

 2> 当A类完全拥有B类中的部分属性和方法时,可以考虑让B类继承A类

继承的好处

 1> 抽取重复代码,提高了代码复用率

 2> 建立了类之间的关系

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

 继承的坏处

代码的耦合性强(就是类与类之间的联系)

>注意点:基本上所有类的根类是NSObject

2.

 继承要点

 1)当调用方法时,首先检测子类有没有实现这个方法,如果子类没有实现,就会调用父类的实现

 2)重写:子类实现父类中声明的方法

 3)子类里面声明的成员变量 和 父类里面声明的成员变量 不能同名 

 

代码示例:

/*

就近原则
 重写:子类重新实现父类的某个方法,会覆盖父类以前的做法
 NSProxy和NSObject
 isa
 所有继承至NSObject对象,都有isa指针(是声明在NSObject中),指向它对应的类
 */

/*
 1.重写:子类重新实现父类中的某个方法,覆盖父类以前的做法
 2.注意
 1> 父类必须声明在子类的前面
 2> 子类不能拥有和父类相同的成员变量
 3> 调用某个方法时,优先去当前类中找,如果找不到,去父类中找
 
 2.坏处:耦合性太强(即类之间的关系太强,你离不开我,我离不开你,把某个类删掉后,就不能用了)
 */

#import <Foundation/Foundation.h>

@interface Person : NSObject     //  冒号表示继承关系,后面跟的是父类

@end

 

(二)super

super的作用

 1)直接调用父类中的某个方法。

 2)super处在对象方法中,那么就会调用父类的对象方法。

      super处在类方法中,那么就会调用父类的类方法。

 3)使用场合:子类重写父类的方法时想保留父类的一些行为。

 

思想:对于一些相同的属性,一般抽取一个公共类。

  

 

iOS开发之oc--继承

标签:

原文地址:http://www.cnblogs.com/iOSteemo/p/4298602.html

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