哪个是面向对象语言的第一类或对象?
答案 0 :(得分:2)
对象是类的实例化。课程排在第一位。
该类表示对象的蓝图或模板。它是确切的布局,描述了如何构建对象。在经典的OO意义上,首先需要类来构建对象。
在现实生活中,自上而下的方法(第一类,然后是对象)或自下而上的方法(首先是对象,然后是类抽象)是否更好是一个哲学问题。
最后,显然有人可以提出一种使用OO概念而没有课程的语言,但IMO并不是真正的问题所在。
答案 1 :(得分:2)
如果您首先考虑对象,然后找出制作它们所需的类,那么设置好的设计就会轻松得多。
并非所有OOP语言都有类 - 而且您不需要它们。
在Ruby中,您可以在对象上定义新方法,只需克隆对象本身 - 或者您可以进行传统设计并定义新类。
在Self中,您根本不定义类。而是将方法添加到“原型示例对象”中,并在需要新“实例”时克隆它的副本。
很多人喜欢开始使用类图来设计OO系统但不幸的是,这是SQL思维的一种症状,而不是OO思维。最重要的是 - 对象做的事情。
答案 2 :(得分:0)
将类视为cookie切割器,将对象视为cookie。课程是规格;对象是内存中那些规范的实现。
课程排在第一位。没有班级就没有对象。
答案 3 :(得分:0)
我会说它的班级。 想象一个没有生命和属性的人体模板。当你给上面说的血液和心脏它的美丽和生活。 class只是一个模板,对象是所有属性和个人的一件事。
答案 4 :(得分:0)
根据维基百科,对OOP有明确功能支持的第一种语言是Simula,其中包括类的概念。最近有一些OOP语言使用prototypes而不是javascript等类。
答案 5 :(得分:0)
在Java和C ++中,class都是第一位的。没有课,就没有对象。
一个类就像一个蓝图。汽车的对象。有了一个蓝图,可以建造许多汽车。使用一个类,可以实例化许多对象。
这与基于原型的OOP语言(如JavaScript)形成对比。在那里你创建了一个通用对象,然后分别给它提供它的功能。
答案 6 :(得分:0)
但在现实生活中,我们还有像粒子和原子这样的东西。我们在数百万年后描述了他们的细节 - 他们存在很好,没有任何“阶级”或定义如何制作它们。
Class是对象的蓝图,它是整数,字符串等基本形式的构建。因此理论上对象'typeof(object)'是最基本的形式,它不需要任何类。
因此我会说对象是第一个,除非有人会给我一个对象的类定义。
对象作为'idea'绝对是第一位的,我们创建了类来描述每个对象的属性。
答案 7 :(得分:0)
课程就像制作汤的总成分和程序一样,而一个对象就是自己的汤。
成分可以是对象本身的权利,因此成分的类别定义将是例如:成分的名称,颜色,大小以及您可以对成分做什么。
编程示例:
class You {
string name;
string height;
string complexion;
void run() {
}
void swim() {
}
...
}
我希望这会有所帮助。
答案 8 :(得分:0)
简短的回答是物体首先出现。
答案很长很长:)
我确信还有很多,但这只适合初学者:)