【发布时间】:2015-12-14 09:39:51
【问题描述】:
我目前正在使用 C 语言进行大量编程。我是一名本科生。我们学习的第一门语言是 Java,现在我正在学习 C。
在 Java 中,我们创建一个类及其字段变量(状态)和一组用于所述对象实例的方法(或行为)。
在 C 中我们有一些非常相似的东西,我们有一个包含我们的对象的结构(我猜,我认为这是它的“状态”或字段变量或“属性”),并且我们有可以传递对象的函数来修改其行为。
在 C 语言中,我可以通过数据隐藏或通过头文件共享来实现相同的“封装”和“继承”形式。
虽然我完全理解 Java 和 C 以非常不同的方式实现这一目标,但我对为什么 C 不被真正视为 OOP 而是程序性感到困惑。
我觉得我错过了一些重要的事情。也许我不清楚什么是程序编程?或者我只是计划错误或使用 C 完全错误。很高兴知道。
编辑:
我不会在每张海报上打字,而是将其添加到此处。非常感谢大家,老实说,我以为我错过了一些重要的概念。你们都说得有道理,我觉得我有更好的理解。非常感谢大家这么快的回答并花时间回复这篇文章。
再次感谢我真的很感激!
【问题讨论】:
-
这已经回答here。
-
@YoungHobbit 或者,C 中的一切都是对象。此外,类不定义对象。对象是类的实例(或类型,取决于语言)
标签: java c oop procedural