name der klasse ausgeben

Status
Nicht offen für weitere Antworten.

H2SO3-

Bekanntes Mitglied
Hallo ich suche eine möglichkeit an den Namen der aktuellen klasse heranzukommen. Jedoch nicht innerhalb einer methode sondern als globale Variable.

quasie ähnlich wie (weiß so geht es nicht)

Java:
public class meineClassXY
{
      private String className = getClass().getName();

      public void eineMethode()
      {
           System.out.println(className);
      }
}

hätte gedacht es würde mit this. gehen, jedoch leider nicht. Auch der Classloader hilft nicht wirklich weiter.
 
was geht an dem Beispiel denn nicht? sieht für mich gut aus
und was genau hast du mit this vor was auch nicht geht?
 
sorry, das beispiel war etwas falsch. Man sollte halt doch code nicht hier schreiben sondern in eclipse und hierher kopieren

der code müsste heißen


Java:
public class meineClassXY
{

    private static String className = getClass().getName();
    
    public static void eineMethode()
    {
         System.out.println(className);
    }
}

muss an den namen aus static methoden heraus zugreifen
 
eine statische Methode kennt nur sich selber oder andere statische Dinge,
vererbende Klassen usw. geht nicht,
wenn ein Objekt die Methode aufruft, könnte es sich selber als Parameter übergeben
 
statisch wärs [c]private static String className = MeineClassXY.class.getName();[/c], aber das kannst du von überall aufrufen.
 
Was genau soll denn da nicht gehen? Meinst du das ungefähr so?
Java:
public class EineKlasse
{
  private final static String className = EineKlasse.class.getName();

  public static void eineMethode()
  {
    System.out.println(className);
  }
}
Prinzipiell ist das alles in allem recht überflüssig, denn, wie faetzminator schon ausgeführt hat, kann man an jeder Stelle in der Anwendung wann immer man will [c]System.out.println(object.getClass().getName());[/c] aufrufen. Will man den Klassennamen ohne die Pakethierarchie tut's auch [c]System.out.println(object.getClass().getSimpleName());[/c].
 
Zuletzt bearbeitet von einem Moderator:
ich will nich nur der namen, der soll teil einer id werden. hardcodiert will ich es nicht, falls sich die klassennamen mal ändern.

Aber danke für eure ideen 🙂
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben