Python中的类与Java中的类的工作方式相同吗?

时间:2016-07-15 16:23:40

标签: java python oop

我的编程背景主要是Java。这是我学到的第一门语言,也是我花费最多时间的语言(然后我转到了C#上一点,最后是C在学校)。前段时间我曾尝试过使用Python,这对我来说似乎有些不同(基于我对Java的经验)。无论如何,现在我正在做更多Python的东西,而且我已经知道Python被认为是一个带有类等的OOP语言。我只是好奇Python的这些属性是否与它们的Java对应物类似。

请理解,我在一个非常基本的层面上问这个问题。我仍然是一个“新”程序员,我只知道如何编写代码,但对各种语言和编程类型的各种错综复杂和细微之处并不了解。

由于

修改

对不起,我意识到这非常广泛,但我真的不是在寻找细节。我想问题的根源源于我对Python中类的目的/角色的好奇心。根据我的经验和我所看到的(这绝不是广泛的或被认为是Python的实际用途的准确表示),大多数时候,Python没有类或任何类型的OOP使用。至于如何与Java相关,我只是想知道Python中的类是否有特殊用途或场景。从本质上讲,由于Java中需要类,而且我是在Java上学习的,因此类对我来说似乎是一种常态。但是,当我使用Python时,我注意到缺少类是常态。这让我想知道Python中的类是否具有某种特殊意义。

如果这不比我的原帖更清楚,或者如果其中任何一个听起来令人困惑/不准确,我道歉。

1 个答案:

答案 0 :(得分:2)

简短的回答是肯定的,不是。

我在Python中看到的与Java和C#相比的一个主要差异是,在Python中,函数不必在类中。事实上,操作甚至不必具备功能。

Java和C#都有两个主要规则:

  1. 所有代码必须在一个类中。
  2. 通常要求操作在功能中。
  3. 这在Python中并不正确。实际上,您可以编写一个非常基本的Python脚本,甚至不在函数中。 Java没有提供这种灵活性 - 有时,这可能是非常积极的,因为这些严格的规则有助于保持代码的有序性。

    Python中的类的运行方式与Java和C#非常相似,但由于上述规则,它们不一定以相同的方式应用。