der Java-Quellcode wie:Was ist die Klasse und Feld Reihenfolge des Ladens in Java?
public class Test{
public static void main(String[] args){
System.out.println(X.Y.Z);
}
}
class X {
static class Y{
static String Z = "balck";
}
static C Y = new C();
}
class C{
String Z = "white";
}
warum ist das Ergebnis: white
?
Oft den ersten Code und Refactoring nehmen kann es die Lösung zeigen; Dies ist alles auf die Klasse Y und die Variable Y zurückzuführen, die beide vorhanden sind, wenn Sie die Zeile System.out.println (X.Y.Z) umstrukturiert haben. mit X -> A Y -> B und Z -> C zeigt sich das Y, das tatsächlich verwendet wird –
Erwägen Sie die Verwendung einer IDE, die Sie vor Fouls warnt, wie die Verwendung von Großbuchstaben für Variablen. – AlexWien
Nichts zu tun mit dem Laden und alles, was mit Scoping und Verstecken zu tun hat. – EJP