Java培训、Android培训、iOS培训、.Net培训、期待与您交流!

(以下内容是对黑马苹果入学视频的个人知识点总结)

三大特性之继承

(一)继承的基本用法

先建立个Animal再用Dog继承前面一个,可以拥有前面所有属性

@interface Animal : NSObject
{
int _age;
double _weight;
} - (void)setAge:(int)age;
- (int)age; - (void)setWeight:(double)weight;
- (double)weight;
@end
@interface Dog : Animal
@end

1.重写:子类重新实现父类中的某个方法,覆盖父类以前的做法

2.注意

1>子类方法和属性的访问过程:如果子类没有,就去访问父类的

2>父类被继承了还是能照常使用的

3>父类的静态方法

4> 画继承结构图,从子类抽取到父类

5>NSObject的引出:全部OC类的最终父类,包含了一些常用方法,比如+new

(二)继承的专业术语

1>父类\超类  superclass

2>子类  subclass\subclasses

(三)继承的细节

1>单继承

2>子类和父类不能有相同的成员变量

3>方法的重写

super关键字

super的作用

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

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

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

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

(四)继承的好处

1>不改变原来模型的基础上,拓充方法

2> 建立了类与类之间的联系

3>抽取了公共代码

4>坏处:耦合性强

(五)继承的使用场合

1>它的所有属性都是你想要的,一般就继承

2>它的部分属性是你想要的,可以抽取出另一个父类

/*
僵尸 跳跃僵尸、舞王僵尸、铁桶僵尸
*/
#import <Foundation/Foundation.h>
// 僵尸
@interface Zoombie : NSObject
- (void)walk; + (void)test;
- (void)test; @end @implementation Zoombie
- (void)walk
{
NSLog(@"往前挪两步******");
} + (void)test
{
NSLog(@"Zoombie+test");
} - (void)test
{
NSLog(@"Zoombie-test");
}
@end // 跳跃僵尸
@interface JumpZoombie : Zoombie
+ (void)haha;
- (void)haha2;
@end @implementation JumpZoombie + (void)haha
{
[super test];
} - (void)haha2
{
[super test];
} - (void)walk
{
// 跳两下
NSLog(@"跳两下"); // 走两下(直接调用父类的walk方法)
[super walk];
//NSLog(@"往前挪两步----"); }
@end int main()
{
//[JumpZoombie haha];
JumpZoombie *jz = [JumpZoombie new]; [jz haha2]; return ;
}

黑马程序员——OC语言 三大特性之继承的更多相关文章

  1. 黑马程序员——OC语言 三大特性之多态

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) 三大特性之一的多态 (一)多态的基本概念 OC对象具有多态性体现在 Per ...

  2. 黑马程序员——OC语言基础语法 面向对象的思想

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...

  3. 黑马程序员——OC语言 类和对象

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)类 1)类的声明 代码编写 ①定义一个Car类,拥有2个属性:轮子数 ...

  4. 黑马程序员——OC语言 核心语法 (3)

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)分类Category 1) 基本用途 如何在不改变原来类模型的前提下 ...

  5. 黑马程序员——OC语言 核心语法(2)

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)id 1)简介:万能指针,能指向任何OC对象,相当于NSObject ...

  6. 黑马程序员——OC语言Foundation框架 (2) NSArray NSSet NSDictionary\NSMutableDictionary

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)NSArray 1>NSArray :不可变数组 ①创建方法 ...

  7. 黑马程序员——OC语言 其他语法

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)ARC的判断准则:只要没有强指针指向对象,就会释放对象 1.ARC特 ...

  8. 黑马程序员——OC语言 内存管理

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)计数器 每个对象内部都保存了一个与之相关联的整数,称为引用计数器,当 ...

  9. 黑马程序员——OC语言Foundation框架 结构体

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)结构体 NSRange(location length) NSPoi ...

随机推荐

  1. ASP.NET WEBAPI 简单CURD综合测试(asp.net MVC,json.net,sql基础存储过程和视图,sqlhelper,json解析)

    草图   真正的后端是不管前端是什么平台,用什么语言的,JSON格式的数据应该可以应对.用ASP.NET WEBAPI尝试做一个后端,实现最基本的CURD,业务逻辑和数据库操作都放在后端,前端只需要正 ...

  2. Windows:常见问题

    1.文件(夹)非法字符 Windows系统文件(夹)非法字符"\\/:*?\"<>|",不包含‘.’,但"."字符不能是文件(夹)的首字符 ...

  3. mysql 允许远程登陆

    参考:http://blog.chinaunix.net/uid-23215128-id-2951624.html 1.以root账户登录 2.grant all PRIVILEGES on disc ...

  4. aliyun的yum源(国内速度极快)

    公网(家里宽带下载速度达到1-3.5M): http://mirrors.aliyun.com/repo/Centos-6.repo 内网(购买的阿里云主机可以访问): http://mirrors. ...

  5. C++11 图说VS2013下的引用叠加规则和模板参数类型推导规则

    背景:    最近在学习C++STL,出于偶然,在C++Reference上看到了vector下的emplace_back函数,不想由此引发了一系列的“探索”,于是就有了现在这篇博文. 前言:     ...

  6. php : 工厂类演示

    工厂类的目的: 通过类名, 动态创建该类的对象实例 <?php /* * 工厂类演示 */ class A{} class B{} // 工厂类: 有一个静态方法,通过该方法,能够获得指定类的对 ...

  7. php : 类常量

    使用总结: 1.不能使用 define 来定义 2.通过 "类名::常量名" 来获取 /** * PHP类常量 * * 类常量属于类自身,不属于对象实例,不能通过对象实例访问 * ...

  8. FPGA相关术语(一)

    参考资料: 1. 数字时钟管理单元DCM 2. RS-232 知识点: ● Xilinx) Digital Clock Manager(DCM) primitive用于实现延迟锁相环(delay lo ...

  9. AlarmManager 实现闹钟的基本功能

    先上效果图 这是一个利用AlarmManager做的最简单的闹钟!迟点再把重复响铃(例如星期一,星期三,重复响铃) 1.MainActivity package com.example.domeref ...

  10. linux应用程序开发-文件编程-系统调用方式

    在看韦东山视频linux驱动方面有一些吃力,究其原因,虽然接触过linux应用程序编程,但是没有深入去理解,相关函数用法不清楚,正好看到国嵌视频对这一方面讲的比较透彻, 所以把学习过程记录下来,也作为 ...