在Python中,类是对象,您可以将它们分配给变量,将它们传递给函数等,就像任何其他对象一样.例如
>>> t = type(10)
>>> t
<type 'int'>
>>> len(t.__dict__)
55
>>> t() # construct an int
0
>>> t(10)
10
Run Code Online (Sandbox Code Playgroud)
Java具有Class提供有关类的一些信息的对象,但您不能使用它们来代替显式类名.它们不是真正的类,只是类信息结构.
Class C = x.getClass();
new C(); // won't work
Run Code Online (Sandbox Code Playgroud)
主要区别在于它们意味着您可以轻松地将类作为对象进行操作。Java 中也提供了相同的功能,您可以使用Class的方法来获取有关对象的类的信息。在 Python、Ruby 和 Smalltalk 等语言中,语言的动态特性允许您“打开”类并更改它,这有时称为“猴子修补”。
就我个人而言,我不认为这些差异有什么大不了的,但我相信我们可以就此展开一场良好的宗教战争。
| 归档时间: |
|
| 查看次数: |
829 次 |
| 最近记录: |