类和对象的概念

时间:2009-11-14 15:01:06

标签: java c++ oop

哪个是面向对象语言的第一类或对象?

9 个答案:

答案 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)

简短的回答是物体首先出现。

答案很长很长:)

  1. 这些语言被称为面向对象,原因。
  2. 每个OO语言员工的口头禅都是一个对象。这包括课程。
  3. 甚至有一些语言虽然不是OO,但支持OO编程(如Erlang)
  4. 我们可以用不同的术语来思考课程:
    • 在大多数基于类的语言中,使用类的主要原因是支持Nominative类型。这是通过它们的“类型”(例如Fruit和Star)区分对象的可能性。
    • 类通常扮演命名角色。我的意思是一些OO语言(如Java)没有明确的环境概念,它由当前在类路径中的所有类来播放。
    • 一个类也可以用作创建新对象的模板,因此
    • 一个类通常是一个优化黑客 - 不要复制所有类实例共有的信息(例如方法)
  5. 我确信还有很多,但这只适合初学者:)