封装,继承,多态

封装

为了保证在对问题的抽象中能够进行有效的设计,您必须从通用的接口考虑问题而不用考虑这些接口的实现细节。

对象的方法和实例变量也是类似的封装,在对象内可见,对象外不可见。实例变量的封装有时候也被称作信息隐藏。

继承

父类有子类共有的变量和方法
子类可以继承父类的所有非private的变量和方法

单根性:一个子类只能继承一个父类
传递性:如果A是B的子类,B是C的子类,那么A具有C的所有特征

[cat  isMenmberOfClass :[Cat class]]; 精确判断对象是不是指定的类型  返回yes
[cat  isMenmberOfClass :[Animal class]]  返回no,,,,,Cat继承与Animal

isKindOf  不精确  上边的2个都返回YES


多态

不同对象可以调用相同方法名的方法。多态的本质就是不同类可以公用相同的方法名。

方法名是对象接口的一部分。对象收到的消息的名字就是调用的方法的名字。因为不同的对象可以有同名的方法,所以对象必须能理解消息的含义。同样的消息发给不同的对象,导致的操作并不相同。

多态的主要好处就是简化了编程接口。它容许在类和类之间重用一些习惯性的命名,而不用为每一个新加的函数命名一个新名字。这样,编程接口就是一些抽象的行为的集合,从而和实现接口的类的区分开来

    id sss;
    sss = [[Student alloc] init];//Student类和Teacher类是两个毫不相关的类
    [sss hello];     //调用Student里边的hello方法

    sss = [[Teacher alloc]init];     //两个id类型的指针指向不同的位置
    [sss hello];    //调用Teacher里边的hello方法。
    2012-08-17 07:58:34.373 12[443:14503] student
    2012-08-17 07:58:34.398 12[443:14503] teacher



封装继承多态是面向对象编程中的三个重要概念。 封装是指将数据和对数据的操作封装在一个类中,通过访问修饰符来控制对数据的访问权限。这样可以隐藏内部实现细节,提高代码的安全性和可维护性。\[2\] 继承是指一个类可以继承另一个类的属性和方法。通过继承,子类可以重用父类的代码,并且可以在子类中添加新的属性和方法。这样可以提高代码的复用性和可扩展性。\[2\] 多态是指同一个方法在不同的对象上可以有不同的行为。通过多态,可以实现方法的重写和重载,使得程序可以根据对象的实际类型来调用相应的方法。这样可以提高代码的灵活性和可扩展性。\[1\] 总结起来,封装继承多态是面向对象编程的三个基本特性,它们可以使代码更加模块化、可维护和可扩展。 #### 引用[.reference_title] - *1* *2* [封装继承多态](https://blog.csdn.net/yahid/article/details/125665027)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [C++ 类的封装继承多态](https://blog.csdn.net/secondtonone1/article/details/124485035)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值