96 votes

obtenir uniquement le nom de la classe Class.getName()

Comment puis-je obtenir le nom de la classe

String.class.getName()  returns java.lang.String

Je suis seulement intéressé à obtenir la dernière partie, c'est à dire seulement String.
Une Api peut-elle le faire ?

4 votes

Java dispose d'une excellente documentation en ligne. La page dont andyb a donné le lien ci-dessous en est un exemple. Chaque fois que vous avez une question concernant la fonctionnalité exacte d'une classe ou d'un package, les javadocs sont aussi faciles à trouver qu'en tapant sur Google "java 6 <package ou classe en question>".

199voto

andyb Points 26066

10 votes

String.class.getSimpleName() -> String, où comme String.class.getName() -> java.lang.String

0 votes

Merci, @andyb getSimpleName() est plus facile d'accéder au nom de la classe sans le nom du paquet. Syntaxe : object.getClass().getSimpleName() Exemple de code

0 votes

Comment l'assigner à une variable statique de type chaîne de caractères. Une erreur apparaît dans Android Studio.

11voto

Venkatesh K Points 91

Les deux voies ci-dessous fonctionnent bien.

System.out.println("The Class Name is: " + this.getClass().getName());
System.out.println("The simple Class Name is: " + this.getClass().getSimpleName());

Sortie comme ci-dessous :

Le nom de la classe est : package.Student

Le nom simple de la classe est : Étudiant

8voto

Ou de façon programmatique

String s = String.class.getName();
s = s.substring(s.lastIndexOf('.') + 1);

1 votes

Cela m'a aidé car je ne peux pas utiliser getSimpleName() à partir de mon framework ...Tq

1 votes

De plus, l'approche programmatique donne des résultats sains pour les classes anonymes.

0 votes

@Imposter vous utilisez quelque chose d'antérieur à Java 1.5 ?

4voto

Kailas Bhakade Points 1501

Vous pouvez utiliser la technique simple suivante pour imprimer le journal avec le nom de la classe.

private String TAG = MainActivity.class.getSimpleName();

Supposons que nous devions vérifier la valeur de la variable à venir dans la méthode, nous pouvons utiliser le journal comme ci-dessous :

private void printVariable(){
Log.e(TAG, "printVariable: ");
}

L'importance de cette ligne est que nous pouvons vérifier le nom de la méthode en même temps que le nom de la classe. Pour écrire ce type de journal.

écrire :- loge et Enter.

s'imprimera sur la console

E/MainActivity: printVariable:

2voto

eaglet3d Points 41

Voici la manière Groovy d'accéder aux propriétés des objets :

this.class.simpleName    # returns the simple name of the current class

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X