Mobile

Methode um Namen aus Paket zu bekommen (java.lang)

R

r_

Gast
Hey Leute,

werde aus der API irgendwie nicht ganz schlau:

Auf welchem Weg/welcher Methode aus java.lang.String aus der Java API bekomm ich die Klassenzugehörigkeit (letztes Teil der Zeichenkette), von z.B. computerbase.testshit.Hehe, den letzten Teil der Zeichenkette (HeHe) als Ergebnis zurück (für einen Getter z.B.)?

Mersi schonmal
 
getClass().getName() liefert "computerbase.testshit.Hehe". Den Namen dann mittels String-Operation.

Vermutlich lässt sich Deine Aufgabe aber lösen, ohne auf solche Methoden zurückzugreifen.
 
Wenn ich mich recht erinnere gibt getSimpleName() sogar direkt den class name ohne package wieder.
 
Jop getSimpleName() sollte funktionieren, das gibt nur den Namen der Klasse des Objekts zurueck auf die du die Methode anwendest.
 
GetSimpleName() dürfen wir leider nicht, ist für die Uni.

Passt das so?

Code:
public class StringHelper {

	//TODO Chef fragen
	static String getClassName(String classname)
	{
		return classname.substring(classname.lastIndexOf('.')); 
	}
 
Sieht gut aus.
Sind solche Helper-Klassen mit statischen Methoden bei euch zugelassen?
Mein Prof würde m9r das um die Ohren hauen wenn ich es nicht anständig begründen kann. :rolleyes::
 
Robust ist die Methode nicht. Was wenn der String keinen Punkt enthält? Es gibt Klassennamen ohne Qualifizierung. Discouraged, aber möglich.

Ansonsten: es ist durchaus üblich Hilfsmethoden in statische Klassen zu packen, die nicht instanziiert werden können, wenn Methoden von vielen Klassen verwendet werden, die keine gemeinsame Hierarchie bilden.
 
Zurück
Oben