谈谈面向对象的特征

对于这个问题,我看到的答案有两种,第一种是封装继承与多态,第二种是封装继承多态和抽象。下面我简单说下我对这几个概念的理解。安全

封装

封装就是一个对象把本身的私有属性或方法隐藏起来,只对外提供与其它对象交互的必要接口,其余对象经过这些接口来操做这些私有的属性与方法,这就能够在数据正常交互的同时,保证安全性。对象

继承

当咱们去定义一个类的时候,能够以一个已有的类为基础,把这个已有的类中定义的内容做为本身的内容,而且能够增长新的内容或者修改原有的内容以知足各类须要,这就是继承。继承是子类共享父类数据的一种机制,提供了很强的重用性与扩展性。继承

多态

多态字面意思就是多种形态,简单的说,就是指不一样的类能够响应同一个请求,实现多态,有三个前提:接口

  • 要有继承关系
  • 子类要重写父类的方法
  • 父类引用指向子类对象

实现多态通常方式是重写与重载,能够这么说,多态在咱们平时开发中随处可见。开发

抽象

咱们把某一类没法具体说清楚的事物定义为抽象的.例如你看到一种没见过的动物,你就会说这是一只动物.那么这个动物就是抽象的.若是咱们没有定义一个抽象类叫动物,那么当你再见到那种没见过的事物的时候就无法称呼它。在咱们的开发中,说到抽象最早想到的就是抽象类与接口,从同种类型对象中抽取出相同的属性,放到抽象类或接口中,全部同类型对象共同去继承(实现)此抽象类(接口),这就是我理解的抽象class

相关文章
相关标签/搜索