Contenu du cours
Java Avancé
Java Avancé
Qu'est-ce qu'une Classe ?
Classe
Une classe est un concept fondamental en programmation POO (programmation orientée objet). Elle désigne un modèle permettant de créer des objets. Une classe se compose de champs (données) et de méthodes (comportement). Prenons l'exemple de la classe Dog
, où les champs (données) correspondent aux informations sur le name
et l'age
du chien, et la méthode (comportement) permettrait au chien de se présenter et de dire son nom :
Dog.java
class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } }
Considérons ce qui constitue les données (champs) et ce qui représente le comportement (méthodes) :
Comme nous pouvons le voir sur le schéma, nous avons des champs qui ne sont pas initialisés dans la classe elle-même, ainsi qu'une méthode qui n'est pas encore appelée nulle part. Créons un objet de la classe Dog
dans la classe principale et initialisons ses champs :
Main.java
public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; } }
Nous avons créé un objet de la classe Dog
et l'avons nommé dog
.
La syntaxe pour créer un objet d'une classe est :
ClassName objectName = new ClassName();
Nous avons également initialisé les propriétés de l'objet en attribuant des valeurs aux champs.
Le nom de notre chien est Brian
, et l'âge est 13
.
La syntaxe pour initialiser les champs d'un objet est :
objectName.fieldName = value;
Nous avons donc maintenant un objet de la classe Dog
avec des champs initialisés.
Voyons maintenant comment invoquer une méthode de notre classe Dog
:
Main.java
package com.example; class Dog { String name; int age; void introduce() { System.out.println("Woof, woof (which means 'My name is " + name + "!')."); } } public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.name = "Brian"; dog.age = 13; dog.introduce(); } }
Nous avons invoqué avec succès une méthode de la classe Dog
en utilisant cette méthode sur l'objet Dog
. Vous avez peut-être remarqué la même syntaxe lorsque nous avons appelé des méthodes de la classe String
précédemment.
1. Comment déclarer une classe ?
2. Faut-il créer une nouvelle classe à l'intérieur d'une autre classe ?
Merci pour vos commentaires !