美文网首页
封装、继承、多态

封装、继承、多态

作者: Helen_kay | 来源:发表于2016-07-28 16:03 被阅读0次

封装:隐藏内部实现,稳定外部接口.

封装就是定义类 定义属性 定义方法

属性封装了setter get方法 

@property(nonatomic,retain)NSString *name,*sex;

类封装了实例变量和方法

```

#import<Foundation/Foundation.h>

@interface Person : NSObject

{

NSString *_name;

NSString *_sex;

int _age;

}

@property(nonatomic,retain)NSString *name,*sex;

@property(nonatomic,assign)int age;

- (id)initWithName:(NSString *)name sex:(NSString *)sex age:(int)age;

-(Person *)work;

@end

#import "Person.h"

@implementation Person

@synthesize name = _name,sex = _sex,age = _age;

- (id)initWithName:(NSString *)name sex:(NSString *)sex age:(int)age

{

self = [super init];

if (self) {

self.name = name;

self.sex = sex;

self.age = age;

}

return self;

}

- (Person *)work

{

NSLog(@"%@正在工作",self.name);

return 0;

}

@end

```

继承:子类可以直接复用父类中的成员.子类继承父类所有方法的声明和实现 非私有的实例变量以及协议 继承是要在.h中声明一下 继承具有单根性和传递性

继承就是代码优化公共部分交给父类

```

#import "Person.h"

@interface Worker : Person

@end

#import "Person.h"

@interface King : Person

@end

```

多态:不同对象对同一消息的不同响应.子类可以重写父类的方法

多态就是允许方法重名 参数或返回值可以是父类型传入或返回

```

#import "AppDelegate.h"

#import "Worker.h"

#import "Actor.h"

#import "King.h"

Worker *worker = [[Worker alloc] init];

worker.name = @"工人";

[worker work];//worker 可以换为父类型Person

King *king = [[King alloc]init];

king.name = @"国王";

[king work];//king可以换为父类型Person

```

相关文章

  • iOS开发之一OC语言的特性

    三大特性:封装、继承、多态 一、封装(成员变量的封装) 二、继承 三、多态(多种形态)

  • java多态

    概述 面向对线的四个基本特征:抽象,封装,基础,多态。抽象,封装,继承是多态的基础,多态是抽象,封装,继承的表现 ...

  • Python基础-day12

    list ​ 封装 ​ 继承 面向对象的三大特性 ​ 封装 继承 多态 封装 ​ 生活里 ​ ...

  • 31-封装、继承、多态

    封装、继承、多态 面向对象编程有三大重要特征:封装、继承和多态。 继承 继承机制实现了代码的复用,多个类公用的代码...

  • Java的基本特性

    关系 Java的四个基本特性分别是抽象,封装,继承,多态。概括起来可以这么理解,抽象、封装、继承是多态的基础,多态...

  • iOS基础 - oc的三大特性

    封装、继承、多态 oc是面向对象的程序设计语言,而面向对象的三大特征:封装、继承、多态。 封装 没有绝对的封装,只...

  • Java笔记

    Java基础 Java面试通关要点 1.面向对象的特征 封装 继承 多态 封装继承多态 2.final,final...

  • iOS 语言三大特性

    封装 、 继承、多态OC学习篇之---类的三大特性(封装,继承,多态) - Android应用安全防护和逆向分析-...

  • day09-Java面向对象三(多态/抽象类/接口)

    9.0 Java面向对象三大特性 封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的 多态概念:指...

  • 2020-05-16--Java--day09【继承、super

    1.继承 三大特征:封装,继承,多态 继承是多态的前提,没有继承就没有多态 继承的主要解决的问题就是:共性抽取 在...

网友评论

      本文标题:封装、继承、多态

      本文链接:https://www.haomeiwen.com/subject/ioyajttx.html