Вы должны помнить, что String
вполне может быть null
и, следовательно,
int length = Gh.length();
будет вызывать исключение .Вот почему вы должны проверить null
вручную null == Gh
перед выполнением Gh.length
.Я предлагаю что-то вроде этого:
private String Gh = ""; // no null but empty string by default
...
public String getGh {
// If Gh is null or empty, assign "AAAAA"; empty otherwise
Gh = (null == Gh || 0 == Gh.length())
? "AAAAA"
: "";
return Gh;
}
//TODO: Turn ShowGh() into camel case: showGh()
public String ShowGh() {
//DONE: you probably mean "getGh()" instead of Gh
// return ("Title: " + Gh);
// getGh() tries to get Gh, change its value to "AAAAA" and we have "Title: AAAAA"
return "Title: " + getGh();
}
Редактировать : если вы хотите избавиться от побочных эффектов в getGh()
и реализовать логику типичным образом:
public String getGh {
// Just return Gh value
return Gh;
}
public String setGh(String value) {
// If Gh is null or empty, assign "AAAAA"; empty otherwise
Gh = (null == value || 0 == value.length())
? "AAAAA
: value;
}