FileSearchApp.java
package com.example.filesearch;
public class FileSearchApp {
String path;
String regex;
public static void main(String[] args) {
FileSearchApp app = new FileSearchApp(); // ?
// some othe code
}
}
为什么有FileSearchApp app = new FileSearchApp();
行?为什么一个对象需要重新创建自己?调用诸如callMethod1();
之类的方法没有问题。
答案 0 :(得分:2)
main
是static
,如果不创建新实例,则只能调用它的其他静态方法。
答案 1 :(得分:2)
有两种类型的方法和四种类型的变量。在这种情况下,主要的两个是
如果看到关键字static
,则它们是静态的(如果不是实例的话)。
它们在两个不同的地方。启动应用程序时,您位于main
方法内,它是static
。要访问实例变量或方法,例如path
,regex
和任何其他实例方法,您需要一个对象。这就是语句new FileSearchApp()
出现的地方。
方法局部变量app
保存您的对象,以便您可以使用该对象调用其中的所有实例。
app.path;
app.regex;
app.instanceMethod();