java面向对象(上)-- 面向对象的概念

面向对象:

  面向对象是一种符合人类思维习惯的编程思想。现实生活中存在各种形态不同的事物,这些事物之间存在着各种各样的联系。在程序中使用对象来映射现实中的事物,使用对象的关系来描述事物之间的联系,这种思想就是面向对象。

面向对象主要由三大特性:

  •   封装

  •   继承

  •   多态

封装性:

  封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。例如:用户使用电脑只需要用手指敲键盘就行了,无须知道电脑内部是如何工作的,即使用户可能碰巧知道电脑的工作原理,但在使用时,并不完全依赖电脑工作原理这些细节。

封装的好处:  

  • 只能通过规定的方法访问数据。
  • 隐藏类的实例细节,方便修改和实现。

封装的实现步骤:

 需要注意:对封装的属性不一定要通过get/set方法,其他方法也可以对封装的属性进行操作。当然最好使用get/set方法,比较标准。

 继承性:

  继承性主要描述的是类与类之间的关系,通过继承,可以在无须重新编写原有类的情况下,对原有类的功能进行扩展。

  例如:有一个汽车类,该类中描述了汽车的普通特性和功能,而轿车的类中不仅应该包含汽车的特性和功能,还应该增加轿车特有的功能,这时,可以让轿车继承汽车类,在轿车类中单独增加轿车特性的方法就可以了,继承不仅增强了代码复用性,提高了开发效率,而且为程序的修改补充提供了便利。

  继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或类从父 类继承方法,使得子类具有父类相同的行为。

特点: 

  继承鼓励类的重用
  继承可以多层继承
  一个类只能继承一个父类
  父类中private修饰的不能被继承
  构造方法不能被继承

生活中的继承:

 多态性:

  多态性指的是程序中允许出现重名现象,它指在一个类中定义的属性和方法被其他类继承后,它们可以具有不同的数据类型或表现出不同的行为,这使得同一个属性和方法在不同的类中具有不同的语义。例如:当听到“Cut”这个单词的时候,理发师的行为是剪发,演员的行为是停止表演,不同的对象,使表现的行为是不一样的。

  面向对象的思想光靠上面的介绍是无法真正理解的,只有通过大量的实践去学习和理解,才能将面向对象真正领悟。

原文地址:https://www.cnblogs.com/wx60079/p/13365631.html