java lokale Variablen nicht verfügbar
Ich bekomme die folgende Fehlermeldung von der eclipse-debugger: lokale variable nicht verfügbar.
Versucht zu trimmen ist der code so viel wie möglich. Das problem ist ganz einfach, ich habe die Verwendung der DivisiveUI UpdateLog () - Methode, aus der Divise-Klasse, mit Hilfe von Variablen aus dem Cluster-Klasse. Die Divise hat eine Liste mit allen Clustern. Uneinigkeit und DivisiveUI hat einen Bezug zu einander. Wie bekomme ich Zugriff auf die Variablen: sumDistance, avgDistance von der Spaltenden Klasse?
Versucht zu schreiben, eine Methode zu Trennende Klasse, konnte immer noch keinen Zugriff auf die benötigten Variablen 😐
Danke!
Fehler Kulturen zu melden.append(text+"\n"); Quelle Nicht Gefunden.
Spaltenden:
package clusters;
import java.util.LinkedList;
public class Divisive implements Runnable
{
LinkedList<Record> mainTable;
LinkedList<Cluster> clusterList;
int meassureType;
DivisiveUI parent;
int clusterCount;
Divisive(LinkedList<Record> mainTable, DivisiveUI parent)
{
this.parent=parent;
this.mainTable=new LinkedList<Record>(mainTable);
setMeassureType(0);
}
}
DivisiveUI:
package clusters;
@SuppressWarnings("serial")
public class DivisiveUI extends JPanel implements Runnable{
ClusteringSelection parent;
Divisive divisive;
JTextField clusterCount;
JTextArea log;
public void UpdateLog(String text)
{
log.append(text+"\n");
log.setCaretPosition(log.getDocument().getLength());
}
}
Cluster:
package clusters;
public class Cluster
{
LinkedList<Record> table;
LinkedList<MatrixRow> matrix;
LinkedList<Double> center;
double sumDistance;
double avgDistance;
int meassureType;
}
- Welche code-Zeile den Fehler verursacht? Können Sie zeigen die tatsächliche vollständige Fehlertext?
- Sie haben nirgendwo initialisiert
log
variable..!! - Ich sagte, ich Schnitt den code +, wenn es nicht initialisiert, ich würde nicht immer einen Fehler für eine nicht-erreichbar-variable.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn der debugger kann nicht der Zugang der lokalen Variablen, das bedeutet, dass der code noch nicht kompiliert mit der option hinzufügen die lokale variable debug-Informationen aus dem bytecode.
Überprüfen, wie Sie kompilieren die Klassen, und stellen Sie sicher, dass diese Informationen in den kompilierten Klassen. Wenn javac wird verwendet, fügen Sie die
-g
option, um die Anzeige alle debugging-Informationen.