Call-String von einer Methode zur anderen in Java
sorry, wenn dies ist eine einfache Frage, aber ich habe versucht, für eine ganze Weile jetzt ist es möglich, den Anruf zu einem string von einer Methode zur anderen...
Unten möchte ich nennen, die Zeichenfolge fileName
von der Methode fileName
zu fileOutputToFile
. Ich weiß, ich kann es passieren, aber ich will es aufrufen fileOutputToFile
.
public class outputToFile {
public void fileName(){
String fileName = "Test";
}
public void fileOutputToFile(String hex) throws Exception{
String fileInfo = hex;
try {
PrintWriter out = new PrintWriter(new BufferedWriter(
new FileWriter("myfile.txt", true)));
out.print(fileInfo);
out.print("\n");
out.close();
}catch (IOException e){
}
}
}
Bitte klären Sie, was Sie zu tun versuchen, wieder?
InformationsquelleAutor James | 2011-02-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es nicht möglich, eine lokale variable in einer anderen Methode-es ist eine Frage des Umfangs.
Daher ist es nicht möglich, zum abrufen der
fileName
variable aus derfileName()
Methode aus derfileOutputToFile
Methode.Einen Weg, um "abrufen" der Dateiname wäre zu
return
den Namen der Datei, wenn diefileName
- Methode aufgerufen wird:(Hinweis: ich habe mir die Freiheit genommen, um die Methode umbenennen, um etwas, das wäre näher an den Konventionen für die Benennung von Bezeichnern in Java.)
Dann, in der
fileOutputToFile
Methode, diegetFileName
Methode kann aufgerufen werden, um den Wert derfileName
.Es sollte angemerkt werden, dass in diesem Fall, kann es tatsächlich besser sein, nur ein Feld (eine Instanz-oder Klassenvariable) zu fordern, anstatt eine separate Methode zum abrufen einer Datei name. In Anbetracht der Methode ist einfach wieder eine Konstante
String
ein Feld halten konnte den Wert:InformationsquelleAutor coobird
Alle Variablen haben einen Geltungsbereich, der grundsätzlich nur die {} - Gehäuse, die Sie sind in. Also, wenn Sie erstellen Sie eine variable in einer Methode, es ist nicht zugänglich mit einer anderen Methode, es sei denn Sie geben es in.
Die gute Nachricht ist, können Sie erstellen Sie Klassen-Ebene Variablen, die von allen geteilt werden Methoden innerhalb einer Klasse!
InformationsquelleAutor jbrookover
Wenn ich Sie richtig verstehe, wollen Sie zurück string fileName().
Derzeit wird die Implementierung von fileName() tut sich nichts. Sie müssen eine return-Anweisung einen Wert zurückgeben: "return "Test"'
InformationsquelleAutor Coleman S