面向对象的三大特征
面向对象有三个特征:1.封装,2.继承,3.多态。
封装
- 一个不可分割的独立实体;
- 隐藏内部细节;
- 保留对外接口。
封装的好处:
- 保证数据的安全性;
- 提供清晰的对外接口;
- 类内部实现可任意修改,不影响其他类。
继承
继承可以使子类具有父类的属性和方法,或者重新定义、追加属性和方法等。
-
对象的继承代表了一种‘is-a’的关系,如果两个对象A和B,可以描述为‘B是A’,则表明B可以继承A;例如人是动物,猫是动物,狗是动物等等......
-
实际上,继承者还可以理解为是对被继承者的特殊化,因为它除了具备被继承者的特性外,还具备自己独有的个性。例如猫块可以爬树,而并不是所有动物都会爬树。这也就说明量对象之间是不能颠倒顺序的。
- 继承定义了类如何相互联系,共享特性,继承的工作方式是,定义父类和子类,或叫做基类和派生类,其中子类继承父类的所有特性,子类不仅继承了父类的所有特性,还可以定义新的特性。
继承提高了代码复用性
多态
- 同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性
- 简单来说就是一类事物有多种形态,例如动物有多态:猫、狗、人...
多态的特点:
- 多态前提是必须有继承;
- 父类引用变量指向子类;
- 父类引用变量调用方法时,会调用子类重写后的方法。
北冥有时候愚笨,如果文章或代码上有什么表达不对或不恰当的地方,还望各位道友不吝赐教(✿◠‿◠)~~