11.1 Structure des classes et des objets en Java : définition de classe
Java est un langage de programmation orienté objet, ce qui signifie qu'il utilise le concept d'« objets » pour modéliser le monde réel. Les objets sont créés à partir de « classes », qui constituent les éléments fondamentaux de la programmation Java. Pour comprendre comment programmer en Java, il est essentiel de comprendre ce que sont les classes et comment elles fonctionnent.
Qu'est-ce qu'une classe ?
Une classe en Java est un plan ou un modèle à partir duquel des objets sont créés. La classe définit l'état et le comportement qu'auront les objets du type créé à partir de celle-ci. L'état d'un objet est représenté par des « attributs » (également appelés champs ou variables d'instance) et le comportement est représenté par des « méthodes » (fonctions ou procédures de classe).
Les classes sont définies à l'aide du mot-clé Les attributs sont les variables que chaque objet créé à partir de la classe aura dans le cadre de son état. Ils sont définis à l’intérieur de la classe mais en dehors de toute méthode. Les attributs peuvent être de n'importe quel type de données, y compris les types primitifs (tels que Les méthodes sont les fonctions qui définissent le comportement des objets de classe. Ils sont utilisés pour manipuler les attributs d'objets ou pour effectuer d'autres tâches liées à l'objet. Les méthodes sont définies au sein de la classe et peuvent avoir des paramètres et un type de retour (ou être En plus des attributs et des méthodes, les classes en Java peuvent avoir des « constructeurs », qui sont des blocs de code spéciaux appelés lorsqu'un nouvel objet de la classe est créé. Les constructeurs ont le même nom que la classe et peuvent être utilisés pour initialiser les attributs de l'objet ou pour exécuter tout code de configuration nécessaire. Pour créer un objet à partir d'une classe, nous utilisons le mot-clé Lorsque vous créez un nouvel objet, une instance de la classe est créée en mémoire et une référence à cette instance est affectée à la variable (dans ce cas, L'encapsulation est l'un des principes fondamentaux de la programmation orientée objet. Il s'agit de restreindre l'accès direct aux composants de classe, de protéger les données internes et de forcer l'interaction avec eux via des méthodes. En Java, cela se fait à l'aide de modificateurs d'accès tels que Lorsque vous définissez des attributs comme Grâce à cette compréhension de la définition de classe en Java, vous serez bien équipé pour commencer à modéliser vos propres objets et à créer des programmes plus complexes et bien structurés.class
suivi du nom de la classe et d'un bloc de code {}
délimité par des accolades qui contient la définition des attributs et des méthodes.< /p>
Voiture de classe publique {
// Les attributs
Balise de chaîne ;
Modèle de chaîne ;
année entière ;
// Méthodes
void accélérer() {
// Code pour accélérer la voiture
}
frein nul() {
// Code pour freiner la voiture
}
}
Attributs d'une classe
int
, double
, boolean
) ou les types d'objets (tels que String
ou objets d'autres classes).Méthodes à une classe
void
si elles ne renvoient rien).Constructeurs
Voiture de classe publique {
Balise de chaîne ;
Modèle de chaîne ;
année entière ;
// Constructeur
Voiture publique (marque String, modèle String, année internationale) {
this.brand = marque ;
this.model = modèle ;
cette.année = année ;
}
}
Instanciation d'objets
new
suivi du nom de la classe et des arguments requis pour le constructeur, le cas échéant.
Voiture maVoiture = nouvelle Voiture("Toyota", "Corolla", 2020);
myCar
).Encapsulation
private
, protected
et public
.privés
, ils ne sont pas accessibles directement depuis l'extérieur de la classe. Au lieu de cela, des méthodes publiques, appelées « getters » et « setters », sont utilisées pour obtenir et définir les valeurs d'attribut.
Voiture de classe publique {
balise de chaîne privée ;
modèle de chaîne privé ;
privé int ano;
// Getter et Setter pour la balise
chaîne publique getMarca() {
marque de retour ;
}
public void setBrand (marque de chaîne) {
this.brand = marque ;
}
// Autres getters et setters...
}