NOIP 提高组初赛 · NOIP 2014 提高组初赛试题 第 1 题

选择题 · 答案 B · 考点:计算机语言分类

← 整套速查表 NOIP 提高组初赛 全部真题

题目

以下哪个是面向对象的高级语言( ).

答案:B

考点

计算机语言分类

解题思维

这题其实就在考一个核心概念:什么是面向对象?别被选项名字绕晕了,直接看语言特性。汇编太底层肯定不对,FORTRAN和Basic都是老牌过程式语言,只有C++才真正引入了类、继承和多态这些面向对象的核心机制。

常见错误

最容易掉进的坑就是觉得'高级语言'就都算面向对象,或者把C语言当成面向对象。其实C语言是纯粹的面向过程,虽然灵活但没封装继承多态。还有人选汇编,那是低级语言,直接对应机器码,跟面向对象八竿子打不着。另外Basic和FORTRAN虽然也是高级语言,但它们的设计哲学就是过程式编程,没有对象模型。

详细解析(节选)

考点与概念

这道题考查的是编程语言分类中的面向对象编程(OOP)概念。简单来说,面向对象就是把程序看作是由一个个'对象'组成的,每个对象有自己的数据和操作数据的方法。它有三个核心支柱:

1. 封装:把数据和操作数据的方法打包在一起,对外只暴露必要的接口,隐藏内部细节。 2. 继承:子类可以复用父类的属性和方法,还能扩展新功能。 3. 多态:同一个接口,不同对象可以有不同的实现,让程序更灵活。

命题人怎么挖坑

命题人出题时最喜欢玩'概念混淆'。比如把'高级语言'和'面向对象'两个概念混在一起,让你觉得只要是高级语言就是面向对象。其实高级语言还包括过程式语言(如C、FORTRAN、Basic),它们虽然比汇编高级,但只是用函数来组织代码,没有对象模型。

另外,汇编语言常被误认为是'高级语言',因为它也是程序员写的,但它直接对应机器指令,属于低级语言,跟面向对象更是风马牛不相及。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断