Was bedeutet $ in einem Variablennamen?
Kürzlich habe ich gelesen, dass die Zeichen$, ist es erlaubt, Java-Variablen-Namen, hat aber eine Besondere Bedeutung. Leider ist nicht erwähnt, was diese Besondere Bedeutung ist.
Daher Frage ich hier: Was ist die Besondere Bedeutung von " $ " Variablen-Namen in Java?
Hier ist das genaue Zitat von
Java: an Introduction to Problem Solving and Programming
von Walter Savitch:
Java erlaubt die dollar-Zeichen-symbol $ erscheint in einem identifier,
aber diese Bezeichner haben eine Besondere Bedeutung, also sollten Sie nicht verwenden
das $ - symbol in Ihrem Bezeichner.
InformationsquelleAutor der Frage | 2011-09-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
$
intern durch den compiler zu schmücken bestimmten Namen. Wikipedia gibt das folgende Beispiel:Kompilieren dieses Programm generiert drei .class-Dateien:
foo.class
die die wichtigsten (äußeren) Klassefoo
foo$bar.class
mit den benannten inneren Klasse
foo.bar
foo$1.class
mit denanonyme innere Klasse (lokale Methode
foo.zark
)Alle diese Klassennamen sind gültig (als
$
Symbole dürfen in der JVM-Spezifikation).In eine ähnliche Richtung
javac
verwendet$
in einigen automatisch generierten Variablennamen: zum Beispielthis$0
et al verwendet werden, für die implizitethis
Referenzen aus der inneren Klasse auf die äußere Klassen.Schließlich die JLS empfiehlt die folgenden:
InformationsquelleAutor der Antwort NPE
Es ist keine Besondere Bedeutung für Sie:
InformationsquelleAutor der Antwort pablosaraiva