Les classes et les objets en java
Les classes et les objets sont les composants fondamentaux de la POO. Il y a souvent une confusion entre les classes et les objets. Dans ce tutoriel, nous essayons de vous expliquer la différence entre classe et objet.
Le concept d’utilisation de classes et d’objets consiste à encapsuler l’état et le comportement dans une seule unité de programmation. Les objets Java sont similaires aux objets du monde réel. Par exemple, nous pouvons créer un objet voiture en Java, qui aura des propriétés telles que la vitesse et la couleur actuelles; et un comportement comme: accélérer et freiner.
Qu’est ce qu’une classe?
Une classe est un plan ou un prototype défini par l’utilisateur à partir duquel des objets sont créés. Il représente l’ensemble des propriétés ou méthodes communes à tous les objets d’un type.
Exemple :
public class Voiture { int vitesse; String model; public Voiture(String model) { this.model = model; } public void accelerer() { // ajoute 10 miles par heure à la vitesse actuelle vitesse = vitesse + 10; } public void freiner() { // déduire 10 miles par heure à la vitesse actuelle vitesse = vitesse - 10; } }
Regardez le code ci-dessus. Les états (vitesse et model) sont stockés dans des attributs et le comportement de l’objet (accélérer et freiner) est indiqué via des méthodes. Dans cet exemple, les méthodes sont accelerer() et freiner().
Noms de la classe
Lorsque vous créez une classe java, vous devez suivre cette règle: le nom du fichier et le nom de la classe doivent être les mêmes. Dans notre exemple, la classe « Voiture » doit être stockée dans un fichier nommé Voiture.java. Java est également sensible à la casse: Voiture écrit avec une majuscule V n’est pas la même chose que voiture, écrit avec une minuscule v.
Constructeur de la classe Java
Les constructeurs sont des méthodes spéciales. Celles-ci sont appelées lorsque nous créons une nouvelle instance de l’objet. Dans notre exemple ci-dessus, le constructeur est:
public Voiture(String model) { this.model = model; }
Les constructeurs doivent avoir le même nom que la classe elle-même. Ils peuvent prendre des paramètres ou non. Le paramètre dans cet exemple est « model ». Nous créons un nouvel objet voiture en utilisant ce constructeur comme ceci:
Voiture renault = new Voiture("Renault");
Qu’est ce qu’un objet?
C’est une unité de base de la programmation orientée objet et représente les entités de la vie réelle. Un programme Java typique crée de nombreux objets qui, comme vous le savez, interagissent en appelant des méthodes. Un objet est composé de:
- Etat: Il est représenté par les attributs d’un objet.
- Comportement: Il est représenté par les méthodes d’un objet.
- Identité: attribue un nom unique à un objet et permet à un objet d’interagir avec d’autres objets.
Continuons maintenant avec notre exemple de voiture. Nous allons créer une deuxième classe nommée « VoitureExemple » et la stocker dans un fichier nommé VoitureExemple.java
public class VoitureExemple { public static void main(String[] args) { //crée une nouvelle voiture Renault Voiture renault = new Voiture("Renault"); //crée une nouvelle voiture Peugeot Voiture peugeot = new Voiture("Peugeot"); //appelle la méthode d'accélération sur Renault renault.accelerer(); //appelle la méthode d'accélération sur Peugeot peugeot.accelerer(); //maintenant freiner la voiture Renault renault.freiner(); } }
Dans le code ci-dessus, nous avons crée deux nouveaux objets de type voiture : Renault et Peugeot. Il s’agit de deux instances distinctes de la classe Voiture (deux objets différents) et l’appel des méthodes de l’objet Renault n’affecte pas l’objet Peugeot.
Conclusion
La classe Java est une entité qui détermine le comportement d’un objet et son contenu. Alors qu’un objet est un composant autonome composé de méthodes et de propriétés permettant de rendre utile certains types de données.
bonjour,j’aimerai savoir quels sont les deux services que l’on rencontre dans une structure dcéveloppant OO en entreprise
Bonjour Paul,
Désolé, j’ai pas bien compris ta question, tu pourras avoir de l’aide sur le forum