封装:

封装是面向对象的特征之一,是对象和类概念的主要特性。

封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

继承:

继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。

通过继承创建的新类称为“子类”或“派生类”。

被继承的类称为“基类”、“父类”或“超类”。

继承的过程,就是从一般到特殊的过程。

要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。

在某些 OOP 语言中,一个子类可以继承多个基类。但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。

继承概念的实现方式主要有2类:实现继承、接口继承。

Ø         实现继承是指使用基类的属性和方法而无需额外编码的能力;
Ø         接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力(子类重构爹类方法);
在考虑使用继承时,有一点需要注意,那就是两个类之间的关系应该是“属于”关系。例如,Employee 是一个人,Manager 也是一个人,因此这两个类都可以继承 Person 类。但是 Leg 类却不能继承 Person 类,因为腿并不是一个人。
抽象类仅定义将由子类创建的一般属性和方法。OO开发范式大致为:划分对象→抽象类→将类组织成为层次化结构(继承和合成) →用类与实例进行设计和实现几个阶段。
多态性(polymorphisn):
是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。
那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
Pyhon 很多语法都是支持多态的,比如 len(),sorted(), 你给len传字符串就返回字符串的长度,传列表就返回列表长度。

最新文章

  1. 1ms引发的问题
  2. HtmlEncode和JavaScriptEncode(预防XSS)
  3. HDU 4791 Alice's Print Service(2013长沙区域赛现场赛A题)
  4. java内部类以及匿名类
  5. 百度校招面试经历及总结(已发offer)
  6. vmware下ubuntu14.04调整分辨率
  7. WCF序列化与反序列化问题
  8. java.lang.StringBuffer源码分析
  9. HAProxy 的负载均衡服务器,Redis 的缓存服务器
  10. fiddler--手机https
  11. css概述
  12. ubuntu 14.04 GDAL
  13. GB2312、Unicode编码等
  14. 【转】ARM vs X86 – Key differences explained!
  15. python 元组用法
  16. PCP
  17. 初学git,初始化库|添加文件ignore|提交方法
  18. Visual Studio资源汇总
  19. sql注入(一)
  20. appium简明教程(1)——appium和它的哲学世界

热门文章

  1. Windows Server 2008 R2远程协助选项 灰色
  2. 洛谷1443 马的遍历【bfs】
  3. ==和equal()的区别
  4. MYSQL数据库在Windows系统中重置root密码
  5. gensim Word2Vec 训练和使用(Model一定要加载到内存中,节省时间!!!)
  6. weakSelf 运用 strongSelf来解决block的循环引用
  7. struts2 中 paramsPrepareParamsStack 拦截器
  8. PCIe 复位:Clod reset、warm reset、Hot reset、Function level reset
  9. Xcode编译警告Assigning to 'id<XXXDelegat> ——Nullable' from incompatible type 'XXXView *const_strong'
  10. [development][PCRE] PCRE