| #🎜 🎜# ???? (Public) public : Les membres, méthodes ou classes qu'il modifie sont accessibles n'importe où.
???? (hérité) protégé : voir ci-dessous,
???? (par défaut) par défaut : accessible dans le même package
???? privé : accessible uniquement dans la classe actuelle.
public class TestDemo01 {
int year;
//默认权限,可以省略default
private int month;
//私有权限,只能在同一个类中访问
public int day;
//公有权限,那里都能访问
}
Démontrons ci-dessous
Dans la première classe TestDemo01
Dans la deuxième classe TestDemo02
nous avons constaté que ce mois est introuvable, c'est parce que nous avons écrit son autorisation d'accès comme S'il est modifié en privé, il devient privé et n'est plus accessible aux autres classes. Il s'agit de l'implémentation de l'encapsulation, le mois ne peut être utilisé que dans TestDemo01.
Nous implémentons l'encapsulation pour ne laisser que l'interface et ne pas afficher les détails.
Montrons l'interface encapsulée
S'il y a de nombreux membres privés, nous n'avons pas besoin d'écrire ces deux-là un par un. Les interfaces peuvent être écrites rapidement à l'aide de la fonction idea,
3. Pour comprendre l'encapsulation, vous devez savoir - package
3.1 Comprendre le concept de package
L'existence d'un package est de mieux gérer les classes et de les combiner. plusieurs classes Rassemblez-les dans un groupe et regroupez-les dans des répertoires similaires
Package est l'incarnation du mécanisme d'encapsulation pour les classes, les interfaces, etc. C'est un bon moyen d'organiser des classes ou des interfaces, etc.
Package également. a une autre fonction très utile Oui, les classes du même nom sont autorisées à exister dans le même projet, à condition qu'elles se trouvent dans des packages différents.
3.2 Importer des classes dans le package
Voyons pourquoi l'erreur est signalée
Comment résoudre ce problème, vous devez alors spécifier le package spécifique
package com.toabao.www;
import java.util.*;
import java.sql.*;
public class TestDemo03 {
public static void main(String[] args) {
int[] array = {1,2,3,4,5};
System.out.println(Arrays.toString(array));
java.util.Date date = new java.util.Date();
java.sql.Date date1 = new java.sql.Date(12);
}
}
Utilisez import static pour importer le package Méthodes et champs statiques
import static java.lang.Math.*;
public class TestDemo01 {
public static void main(String[] args) {
double x = 13;
double y = 14;
double result = sqrt(pow(x,2)+pow(y,2));
}
}
3.3 Package personnalisé
Regardez d'abord les étapes si vous ne savez pas comment, vous pouvez essayer de créer un package vous-même
Remarque :
1. est créé, dans le fichier, le dernier Il doit y avoir une déclaration de package ci-dessus pour indiquer dans quel package se trouve le fichier (l'idée l'ajoutera automatiquement)
2. nom de domaine
3. Nous pouvons jeter un œil à l'emplacement où le code est stocké. Le package que vous venez de créer
3.4 Contrôle des autorisations d'accès du package
La même classe dans le même package
package Demo01;
public class Test01 {
int count = 10;
public void func(){
System.out.println(count);
}
}
Le. l'accès de différentes classes dans le même package
est différent Les autorisations d'accès aux sous-classes dans les packages
le nombre précédent est par défaut, ce qui est par défaut. Les sous-classes et les non-sous-classes dans différents packages ne sont pas accessibles
. Si vous devez accéder, vous pouvez modifier les autorisations d'accès en public
3.5 Packages courants dans Java
1 java.lang : classes de base couramment utilisées dans le système (String, Object). Vous n'avez pas besoin de les écrire après JDK1.1, ils seront automatiquement importés,
2. java .lang.reflflect : package de programmation de réflexion java
3. java.net : package de développement de programmation réseau
4. : package de support pour le développement de bases de données
5. java.util : un programme outil fourni par java Package
6 java.io : package de développement de programmation d'E/S
.