在许多语言中,我们使用new
实例化一个类的新实例。例如,在Java中:
class MyClass {
int number = 1;
MyClass(int n) {
self.number = n;
}
}
MyClass obj1 = new MyClass(5);
但是,随着我越来越多地使用Python,我开始奇怪为什么甚至需要new
关键字。在Python中,我们可以简单地做到:
class MyClass:
def __init__(self, n):
self.n = n
obj1 = MyClass(5)
那么,关键字的目的是什么?通过使用关键字可以解决某些语法上的歧义吗?
答案 0 :(得分:5)
要明确地说“我想创建一个类的新实例”
这是为了与方法调用区分开来,甚至可以这样做:
public class Main {
public static void main(String[] args) {
Foo();
new Foo();
}
public static void Foo() {
System.out.println("Method");
}
public static class Foo {
public Foo() {
System.out.println("Class");
}
}
}
主跑带给您
Method
Class