1. Encapsulez les attributs afin que les utilisateurs ne puissent pas saisir directement des données. Nous devons empêcher les utilisateurs d'attribuer des valeurs aux attributs à l'aide de la méthode "object.property". Ensuite, vous devez déclarer l'attribut comme privé.
2. Nous privatisons l'attribut de la classe et fournissons une méthode publique pour obtenir (getXxx) et définir (setXxx) la valeur de cet attribut.
L'incarnation de l'encapsulation nécessite une autorisation. modificateurs pour correspondre
1. Les quatre autorisations spécifiées par Java (classées de petite à grande) : privée, par défaut, protégée, publique
2. Ces quatre autorisations peuvent être utilisées pour modifier la structure interne de la classe et de la classe. classe : Attributs, méthodes, constructeurs, classes internes
3. Concrètement, 4 types de permissions peuvent être utilisés pour modifier la structure interne de la classe : Propriétés, méthodes, constructeurs, classes internes
Pour modifier la classe, vous pouvez utiliser uniquement : par défaut, public
Exemple :
package KindMethod3; public class privateTest { // 用private修饰,定义为私有变量,外不不能随意更改 private int age; //年龄 private String name; //名字 // 同时,我们给这两个属性创建两个可以更改他们的接口 public void setAge(int age){ this.age=age; } public int getAge(){ return age; } public void setName(String name){ this.name=name; } public String getName(){ return name; } public void disPlay(){ System.out.println("我的名字叫"+name+"今年"+age+"岁"); } }
package KindMethod3; public class privateTest1 { public static void main(String[] args) { privateTest sc = new privateTest(); // 这个时候就不能直接给类中属性直接赋值了,就会报错 // sc.age=18; // sc.name="小芳" // 我们需要通过set方法给属性赋值,get取值 sc.setAge(18); sc.setName("小芳"); sc.disPlay(); } }
Vérifiez les résultats en cours d'exécution en suivant le code :
public class Order { private int text1; int text2; public int text3; private void methodPrivate(){ text1 = 1; text2 = 2; text3 = 3; } void methodDefault(){ text1 = 1; text2 = 2; text3 = 3; } public void methodPublic(){ text1 = 1; text2 = 2; text3 = 3; } }
public class OrderTest { public static void main(String[] args) { Order order = new Order(); order.text2 = 1; order.text3 = 2; //出了Order类之后,私有的结构就不可以调用了 // order.text1 = 3;//The field Order.text1 is not visible order.methodDefault(); order.methodPublic(); //出了Order类之后,私有的结构就不可以调用了 // order.methodPrivate();//The method methodPrivate() from the type Order is not visible } }
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!