我在努力理解如何使用來自其他對象的java對象。我有3個簡單的類: 1)環境目標瞭解引用java中的其他類 - 空指針異常
public class Environment {
protected String envName;
public Environment(String envName){
this.envName = envName;
}
// get and set methods
public String getenvName(){
return envName;
}
public void setenvName(String envName){
this.envName = envName;
}
}
2)班將填充這個對象
public class FetchConfig {
Environment environment;
public FetchConfig() {
}
public void buildConfig() {
environment.setenvName("Steve");
}
}
3)類main方法將與我的環境對象的工作:
public class WorkWithEnvironment {
private FetchConfig config;
public static void main(String[] args) throws FileNotFoundException,
IOException {
WorkWithEnvironment w = new WorkWithEnvironment();
w.setupConfig();
w.readEnvNames();
}
private void setupConfig() throws FileNotFoundException, IOException {
config = new FetchConfig();
config.buildConfig();
}
private void readEnvNames() {
System.out.println("Environment name is: "
+ config.environment.getenvName());
}
}
但是,當我運行它,我不斷得到一個NPE(NullPointerException)在這裏 - > environment.setenvName(「史蒂夫」);
您的'FetchConfig'類具有'Environment'字段。如果你沒有爲每個實例初始化它,它仍然是'null'。 –