Smart façon de vérifier la super-classe
public boolean isUserControled(){
return action.getClass().getSuperclass().toString().equals("class logic.UserBehaviour");
}
Je pense que ce morceau de code est assez explicite. Est-il une façon plus intelligente de le faire?
Grâce
OriginalL'auteur Francisco P. | 2011-04-02
Vous devez vous connecter pour publier un commentaire.
Sauf si vous voulez seulement vérifier le tout premier super-classe, il serait préférable d'utiliser:
Votre méthode serait mieux avec ceci:
L'appel à
toString()
n'est pas la meilleure idée.Ou mieux encore, comme posté par Ulrik:
==
(voir Ulrik réponse)Je suis d'accord et n'avait pas le sujet d'abord, (+1)'d sa réponse déjà.
OriginalL'auteur Mat
(action instanceof logic.UserBehaviour)
renvoie true si l'action est un objet d'un type qui s'étend UserBehavior.Un extrait de http://download.oracle.com/javase/tutorial/java/nutsandbolts/op2.html
De sortie:
Lors de l'utilisation de l'opérateur instanceof, gardez à l'esprit que null n'est pas une instance de quoi que ce soit.
OriginalL'auteur Speck
Si vous voulez seulement vérifier le tout premier super-classe:
Autrement:
OriginalL'auteur Ulrik