Maison > Java > javaDidacticiel > Qu'est-ce que le constructeur par défaut de Java et en quoi diffère-t-il des constructeurs définis explicitement ?

Qu'est-ce que le constructeur par défaut de Java et en quoi diffère-t-il des constructeurs définis explicitement ?

Patricia Arquette
Libérer: 2024-12-24 16:00:18
original
303 Les gens l'ont consulté

What is Java's Default Constructor and How Does it Differ from Explicitly Defined Constructors?

Constructeur par défaut de Java : une explication détaillée

Un constructeur par défaut est un type spécial de constructeur qui est automatiquement généré par le compilateur lorsque une classe n'a pas de constructeurs explicitement définis. Il s'agit d'un constructeur sans argument qui initialise toutes les variables d'instance de l'objet à leurs valeurs par défaut.

Identification du constructeur par défaut

Dans l'exemple fourni, aucun des constructors est le constructeur par défaut. Un constructeur par défaut ressemblerait à ceci :

public Module()
{
  super();
  this.name = null;
  this.credits = 0;
  this.hours = 0;
}
Copier après la connexion

Ce constructeur n'a aucun argument et initialise toutes les variables d'instance à leurs valeurs par défaut (null pour String, 0 pour int).

Différence par rapport aux autres constructeurs

Le constructeur par défaut diffère des autres constructeurs par les éléments suivants façons :

  • Il n'a aucun argument.
  • Il initialise toutes les variables d'instance à leurs valeurs par défaut.
  • Il n'est généré que si la classe n'en a pas explicitement constructeurs définis.

Implications de la définition d'autres Constructeurs

Si une classe définit au moins un constructeur explicitement défini, le compilateur ne générera pas de constructeur par défaut. Cela signifie que tous les objets de la classe doivent être initialisés à l'aide de l'un des constructeurs explicitement définis.

Spécification du langage Java

La spécification du langage Java fournit plus de détails sur la valeur par défaut constructeur dans la section 8.8.9.

Clarification

Alors que le Le constructeur par défaut est responsable de l'initialisation des variables d'instance, il ne les définit pas réellement sur des valeurs par défaut spécifiques. Au lieu de cela, la machine virtuelle Java (JVM) les définit sur les valeurs par défaut lors de la création de l'objet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal