Java >> Tutoriel Java >  >> Tag >> class

Constructeur Java | Par défaut | Classe | Types avec exemples

Un constructeur Java est une méthode, elle est invoquée lorsqu'un nouvel objet de la classe a été créé et que de la mémoire a été allouée à l'objet. Il a le même nom qu'un nom de classe et ressemble à une méthode mais sans retour de valeur (pas de type de retour). Il s'agit d'une définition de constructeur Java.

La principale raison d'utiliser le constructeur est les variables d'instance de valeurs initiales de la classe. Ou Vous pouvez effectuer toute autre procédure de démarrage requise pour créer un objet entièrement formé.

Ce didacticiel vous permettra de découvrir la vue d'ensemble du constructeur de classes Java et de taper avec des exemples.

Types de constructeurs Java

Voici 3 types de constructeurs en Java :

  • Constructeur par défaut – Si vous n'implémentez aucun constructeur dans votre classe, le compilateur Java insère un constructeur par défaut dans votre code à votre place.
  • Constructeurs sans argument – Le constructeur sans arguments, la signature et le code sont identiques au constructeur par défaut.
  • Constructeurs paramétrés – Constructeur avec arguments ou paramètres, utilisé pour les variables d'instance d'initialisation.

Syntaxe

Voici la syntaxe du constructeur Java en Java, si vous n'en avez pas écrit, alors le compilateur le crée automatiquement.

class ClassName {
 //constructor
 ClassName() {
 }
}

Exemple de constructeur Java

Ici, nous couvrons l'exemple des constructeurs par défaut, sans argument et paramétrés.

Constructeur par défaut en Java

Vous pouvez définir vous-même la syntaxe ci-dessus ou cela ressemblera au code ci-dessous. S'il n'y a pas de constructeurs, le compilateur Java en génère un par défaut.

class Student {
 Student(){}
}

Exemple de constructeur sans argument

Un constructeur utilisé sans argument mais avec une déclaration dans le corps, appelée Constructeur sans argument. En voici un exemple de code.

class ClassName {
 public ClassName() {
 System.out.println("This Example of No Argument Constructor");
 }

 public static void main(String args[]) {

 //Creating new object
 ClassName cn = new ClassName();
 }
}

Sortie : Cet exemple de constructeur sans argument

Exemple de constructeur paramétré

Avec est vous pouvez passer la valeur initiale pour les variables d'instance.

Remarque :Si vous utilisez le même nom de variable, utilisez ceci mot-clé. Par exemple, en utilisant id et name le même nom de variable que la variable de classe, vous devez donc utiliser ce mot-clé avec des variables d'instance.

class Student{
 int id;
 String name;

 Student(int id, String name) {
 this.id = id;
 this.name = name;
 }

 public static void main(String args[]) {
 Student obj1 = new Student(9245, "John");
 Student obj2 = new Student(9232, "Tom");
 }
}

Copier le constructeur en Java

Un constructeur de copie est utilisé pour copier les valeurs d'un objet vers un autre objet. En voici un exemple simple.

class Student {
 String msg;

 //Parameterized constructor
 Student(String value) {
 this.msg = value;
 }

 //copy constructor
 Student(Student stu){
 msg = stu.msg;

 }

 void disp() {
 System.out.println("Message : " + msg);
 }

 public static void main(String args[]) {
 Student obj1 = new Student("Hello copy");
 Student obj2 = new Student(obj1);

 obj1.disp();
 obj2.disp();
 }
}

Sortie : Message :Bonjour copie
Message :Bonjour copie

Guide de création d'un constructeur

  1. Le nom du constructeur doit être le même que celui de la classe
  2. Un constructeur ne doit pas avoir de type de retour explicite
  3. Ne peut pas être statique, final, abstrait et synchronisé en Java

QA :Pourquoi nous utilisons le constructeur en Java et avec quand ça a appelé ?

Constructeurs en Java est une méthode utilisée pour définir les valeurs initiales des variables de champ. En Java lorsque l'objet est créé, le compilateur appelle ou crée le constructeur d'abord.

Plus  :La surcharge des constructeurs en Java sera abordée dans le tutoriel sur la surcharge.

Faites des commentaires si vous avez des doutes et des suggestions sur ce tutoriel.


Balise Java