IntelliJ String von andere Class abfragen?
Ich möchte von der Class VanishON den String Location in die VanishOFF Class bekommen
VanishON
String Location = String.valueOf(player.getLocation());
VanisOFF
player.teleport(Location);
1 Antwort
Mach doch in deiner VanishOn Klasse eine Methode um genau das zu erledigen:
public class VanishOn {
...
public String getPlayerLocation() {
return String.valueOf(player.getLocation());
}
}
und in deiner VansihOff benutzt Du dann einfach eine Referenz auf ein vanishOn um die Methode aufzururfen.
public class VanishOff {
private VanishOn vanishOn;
....
private void mySuperDuperMethod() {
String playerLocation = vanishOn.getPlayerLocation();
...
}
}
Heißt übrigens nicht, dass hier gute Abstraktion und/oder gutes Design gewählt wurde. Player Location als String klingt schon hart falsch.
VanishOn und VanishOff klingt schon nach miesen Klassennamen. Klassennamen sollten Nomen sein, Methoden Aktionen auf den Klassen. VanishOn und Off klingt nach einem Zustand, der über zwei Klassen verteilt wird - was ansich schon problematisch sein könnte.
Auch ist fraglich ob ein VanishOff ein VanishOn überhaupt referenzieren sollte, wenn dann, sollten beide "gleichwertig" sein und nicht voneinander abhängen.
Gruß