Mic*_*ber -2 php python java syntax
在许多语言中,我们用于new实例化类的新实例。例如,在Java中:
class MyClass {
int number = 1;
MyClass(int n) {
self.number = n;
}
}
Run Code Online (Sandbox Code Playgroud)
MyClass obj1 = new MyClass(5);
Run Code Online (Sandbox Code Playgroud)
但是,随着我越来越多地使用Python,我开始怀疑为什么new关键字甚至是必需的。在Python中,我们可以简单地执行以下操作:
class MyClass:
def __init__(self, n):
self.n = n
Run Code Online (Sandbox Code Playgroud)
obj1 = MyClass(5)
Run Code Online (Sandbox Code Playgroud)
那么,关键字的目的是什么?使用关键字可以解决一些语法歧义吗?
要明确地说“我想创建一个类的新实例”
这是为了与方法调用区分开来,您甚至可以这样做:
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");
}
}
}
Run Code Online (Sandbox Code Playgroud)
运行main给你
Method
Class
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
79 次 |
| 最近记录: |