<分区>
这是代码:
public class Main {
public static void main(String[] args) {
new Picture().edit();
}
}
为什么图片前面有括号?
有一个Picture类,它有一个edit方法,但是图片类也有一个Picture方法。
这是怎么回事?
是否正在创建 Picture 类,调用它的 picture 方法,同时也调用 edit 方法?
谢谢
<分区>
这是代码:
public class Main {
public static void main(String[] args) {
new Picture().edit();
}
}
为什么图片前面有括号?
有一个Picture类,它有一个edit方法,但是图片类也有一个Picture方法。
这是怎么回事?
是否正在创建 Picture 类,调用它的 picture 方法,同时也调用 edit 方法?
谢谢
最佳答案
您在这里所做的就是通过无参数(可能是默认)构造函数创建一个 Picture
实例。随后,您对刚创建的实例调用 edit()
方法。由于您没有将 Picture
实例存储在任何地方,因此它可以在方法调用完成后直接进行垃圾回收。
出于所有实际目的,您可以将代码编写为
Picture picture = new Picture();
picture.edit();
请注意,图片
方法 不会在您的代码段中的任何位置涉及。 constructors之间有区别和 methods .
Why are there brackets infront of Picture?
这只是Java中对象创建的语法。很明显,如果 Picture
构造函数接受了一些参数,那么我们肯定需要这些括号:
new Picture(someArg)
但我们甚至需要带有 0-arg 构造函数的括号这一事实纯粹是语言设计决定。我相信像 Scala 这样的语言(它也在 JVM 上运行)你可以在不使用括号的情况下摆脱困境。
关于java - Java 中的主类。叫什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19434843/