11. Structure des classes et des objets en Java
Java est un langage de programmation orienté objet, ce qui signifie qu'il utilise des objets pour représenter des données et des méthodes pour opérer sur ces données. La structure des classes et des objets est fondamentale pour comprendre le fonctionnement de Java. Explorons cette structure étape par étape.
Cours en Java
Une classe est un modèle ou un plan pour des objets. Il définit un type de données, spécifiant les données qu'un objet peut contenir et les méthodes qui peuvent opérer sur ces données. Les classes en Java sont définies à l'aide du mot-clé class
.
Voiture de classe publique {
// Attributs de classe
balise de chaîne privée ;
modèle de chaîne privé ;
privé int ano;
// Constructeur de classe
Voiture publique (marque String, modèle String, année internationale) {
this.brand = marque ;
this.model = modèle ;
cette.année = année ;
}
// Méthodes de classe
public void accélérer() {
System.out.println("La voiture accélère.");
}
// Getters et Setters
chaîne publique getMarca() {
marque de retour ;
}
public void setBrand (marque de chaîne) {
this.brand = marque ;
}
}
Dans cet exemple, la classe Car
a trois attributs (marque, modèle et année), un constructeur pour initialiser ces attributs et une méthode accelerate
pour effectuer une action. De plus, nous avons des méthodes getters et setters qui sont utilisées pour accéder et modifier les valeurs des attributs privés.
Objets en Java
Un objet est une instance d'une classe. Lorsque nous créons un objet, nous créons une entité qui possède les attributs et les comportements définis par la classe. Pour créer un objet en Java, nous utilisons le mot-clé new
et appelons le constructeur de classe.
classe publique Principale {
public static void main (String[] arguments) {
// Création d'un objet de la classe Car
Voiture maVoiture = nouvelle Voiture("Toyota", "Corolla", 2020);
// Appel d'une méthode objet
maVoiture.accelerate();
}
}
Ici, myCar
est un objet de classe Car
, et nous pouvons accéder à ses méthodes et attributs en utilisant la notation par points.
Encapsulation
L'encapsulation est l'un des principes fondamentaux de la programmation orientée objet. Il fait référence à la pratique consistant à masquer les détails internes d'une classe et à exposer uniquement ce qui est nécessaire via une interface publique. Cela se fait à l'aide de modificateurs d'accès tels que private
, public
et protected
.
Les attributs d'une classe sont souvent marqués private
pour empêcher l'accès direct depuis l'extérieur de la classe, et des méthodes publique
sont fournies pour accéder et modifier ces valeurs de manière contrôlée. .
Héritage
L'héritage est un mécanisme par lequel une classe peut hériter des attributs et des méthodes d'une autre classe. La classe dont elle hérite est appelée sous-classe ou classe dérivée, et la classe dont elle hérite est appelée superclasse ou classe de base. En Java, cela se fait à l'aide du mot-clé extends
.
Véhicule de classe publique {
// Attributs et méthodes communs à tous les véhicules
}
La classe publique Car étend le véhicule {
// Attributs et méthodes spécifiques à une voiture
}
Dans cet exemple, Car
hérite de Vehicle
, ce qui signifie qu'un objet Car
aura tous les attributs et méthodes d'un Véhicule
, en plus du vôtre.
Polymorphisme
Le polymorphisme est la capacité d'une méthode à avoir plusieurs formes. En Java, cela peut être réalisé grâce à la surcharge de méthodes (méthodes portant le même nom mais des listes de paramètres différentes) et au remplacement de méthodes (lorsqu'une sous-classe redéfinit une méthode de superclasse).
Véhicule de classe publique {
public void move() {
System.out.println("Le véhicule bouge.");
}
}
La classe publique Car étend le véhicule {
@Passer outre
public void move() {
System.out.println("La voiture bouge.");
}
}
Ici, la méthode move
est écrasée dans la classe Car
pour fournir une implémentation spécifique à la voiture.
Interfaces
Une interface en Java est une sorte de contrat qui définit un ensemble de méthodes abstraites qu'une classe doit implémenter. Les interfaces sont définies à l'aide du mot-clé interface
et les classes les implémentent à l'aide du mot-clé implements
.
interface publique Motorisée {
void callMotor();
}
outils de voiture de classe publique motorisés {
@Passer outre
public void callMotor() {
System.out.println("Moteur allumé.");
}
}
Dans cet exemple, la classe Car
implémente l'interface Motorized
, en s'engageant àFournissez une implémentation pour la méthode ligarMotor
.
Conclusion
La structure des classes et des objets en Java est essentielle pour développer des applications robustes et évolutives. Grâce à l'utilisation de classes, d'objets, d'encapsulation, d'héritage, de polymorphisme et d'interfaces, nous pouvons créer un code bien organisé, réutilisable et facile à maintenir. En maîtrisant ces concepts, vous serez bien armé pour relever les défis de la programmation en Java.