Maison >Java >javaDidacticiel >Qu'est-ce que protéger en Java

Qu'est-ce que protéger en Java

(*-*)浩
(*-*)浩original
2019-05-27 17:56:279052parcourir

Protect est le mot-clé d'autorisation en Java, qui spécifie généralement le champ d'utilisation.

Qu'est-ce que protéger en Java

protected :

Le package de membre de classe modifié protégé de la classe parent est visible dans le package et est valable pour Ses sous-classes sont visibles.

La classe parent et la sous-classe ne sont pas dans le même package. La sous-classe ne peut accéder qu'aux membres protégés hérités de la classe parent, mais pas aux membres instanciés par la classe parent.

Nous pouvons mieux comprendre le mot-clé protégé grâce aux exemples suivants de visibilité des méthodes protégées. Lorsque vous recevez un appel impliquant un membre protégé, vous devez d'abord déterminer d'où vient le membre protégé et quelle est sa plage de visibilité, puis vous pouvez déterminer si l'utilisation actuelle est réalisable

Exemple :

//示例一
package p1;
public class Father1 {
   protected void f() {}    // 父类Father1中的protected方法
}

package p1;
public class Son1 extends Father1 {}

package p11;
public class Son11 extends Father1{}

package p1;
public class Test1 {
   public static void main(String[] args) {
       Son1 son1 = new Son1();
       son1.f(); // Compile OK     ----(1)
       son1.clone(); // Compile Error     ----(2)

       Son11 son = new Son11();    
       son11.f(); // Compile OK     ----(3)
       son11.clone(); // Compile Error     ----(4)
   }
}

Pour l'exemple ci-dessus, regardez d'abord (1)(3), où la méthode f() est héritée de la classe Father1 et sa visibilité est le package p1 et ses sous-classes Son1 et Son11, tandis que Puisque le Le package de la classe Test1 qui appelle la méthode f() est également p1, (1) et (3) sont compilés avec succès. Deuxièmement, regardez (2)(4). La visibilité de la méthode clone() est le package java.lang et toutes ses sous-classes pour les instructions "son1.clone();" , deux Le clone() de l'utilisateur est visible dans les classes Son1 et Son11, mais est invisible pour Test1, donc la compilation dans (1) et (3) échoue.

Résumé

protected est le modificateur d'autorisation d'accès aux membres de la classe Java le plus difficile à comprendre. En programmation, lorsque vous rencontrez un appel impliquant un protégé, vous devez d'abord déterminer d'où vient le membre protégé et quelle est sa plage de visibilité, puis l'utiliser correctement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Pourquoi apprendre JavaArticle suivant:Pourquoi apprendre Java