首页 > 试题广场 >

面向对象的三大特征是什么

[问答题]

面向对象的三大特征是什么

推荐

得分点

​ 封装、继承、多态

参考答案

标准回答

​ 面向对象的三大基本特征是:封装、继承、多态。

​ 封装是指将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,让外部程序通过该类提供的方法来实现对内部信息的操作和访问,这种做法有助于规范使用者的行为,让使用者只能通过事先预定的方法访问数据,提高了代码的可维护性。

​ 继承是面向对象实现代码复用的重要手段,Java通过extends作为关键字实现类的继承,实现继承的类被称为子类,被继承的类称为父类(有的也被称为基类和超类),父类和子类的关系是一种一般和特殊的关系。

​ 多态是指,当把一个子类对象直接赋给父类引用变量时,例如 BaseClass obj = new SubClass();,这个obj引用变量的编译时类型是BaseClass,而运行时类型是SubClass,当运行时调用该引用变量的方法时,其方法行为总是表现出子类方法的行为特征,而不是父类方法的行为特征。即,相同类型的变量、调用同一个方法时会呈现出多种不同的行为特征的情况叫做多态。

加分回答

封装的优点:

  • 隐藏类的成员变量和实现细节,不允许外部直接访问。
  • 规范使用者的行为,让使用者只能通过事先预定的方法访问数据,通过在这个方法中加入逻辑控制,限制使用者对成员变量的不合理访问。
  • 可进行数据检查,从而有利于保证对象信息的完整性。
  • 便于修改,提高代码的可维护性。

继承的优点:

  • 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性,提高了代码复用。
  • 提高代码的可扩展性,很多开源框架的扩展接口都是通过继承父类来完成的。

多态的优点:

  • 提高了代码的维护性
  • 提高了代码的扩展性

延伸阅读

​ 抽象也是面向对象的重要部分,抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是考虑部分问题。例如,需要考察Person对象时,不可能在程序中把Person的所有细节都定义出来,通常只能定义Person的部分数据、部分行为特征,而这些数据、行为特征是软件系统所关心的部分。

编辑于 2021-09-15 10:25:29 回复(0)
xx
编辑于 2024-03-03 21:57:57 回复(0)
封装继承多态
发表于 2022-11-10 13:22:04 回复(0)
封装继承多态
发表于 2022-06-06 09:16:50 回复(0)
封装继承多态
发表于 2021-12-17 22:19:45 回复(0)