以下不属于面向对象程序设计语言的是( )。
这题考的是语言范式分类。拿到题先别急着背语法,直接看选项里有没有“类”和“对象”这两个核心词。C++、Python、Java 都有类,只有 C 没有,所以答案很明确是 D。
学生最容易在 C++ 和 C 之间犹豫,因为 C++ 名字里带 C,容易误以为它只是 C 的升级版或者纯过程式语言。还有人会把 Python 当成纯脚本语言,忽略它完整的类机制。另外,题目问的是“不属于”,很多考生看到 C++ 就下意识选它,完全没做反向思考,这是典型的审题陷阱。
【考点】面向对象编程|编程语言分类|C++与C的区别
GESP 六级考纲中,面向对象程序设计属于“编程基础”模块,是区分考生是否真正理解现代编程范式的分水岭。命题人把这道题放在这里,就是要筛掉那些只会背语法、却分不清语言本质的人。
看到“不属于面向对象”立刻锁定C——它只支持函数和全局变量,没有类、继承、多态。C++、Python、Java都支持类的定义与对象实例化,哪怕C++早期版本也有结构体模拟类,但本质仍属面向对象。这一类题的通法是“先排除法”:逐个代入选项,看它是否具备类的定义能力。
陷阱一:误以为C++是纯过程式,其实C++是混合语言,既有过程式也有面向对象。陷阱二:把Python当成脚本语言就忽略其类机制。陷阱三:看到C++就下意识选它,题目问的是“不属于”,必须反向思考。
如果改成“下列哪种语言不支持类”,答案就是C;若问“下列哪种语言是纯过程式”,答案还是C;若问“下列哪种语言支持继承”,答案就是C++/Python/Java。刷到这类题,先问自己:它在考语言特性还是考语法?
回到本题,C++ 支持类、继承、多态;Python 是动态类型但同样有完整的类系统;Java 是典型的纯面向对象语言;只有 C 语言没有类、没有对象,完全属于过程式语言。因此正确答案是 D。