Maison >Java >JavaBase >Comment écrire une méthode constructeur en Java

Comment écrire une méthode constructeur en Java

青灯夜游
青灯夜游original
2021-07-23 17:42:0319461parcourir

La méthode constructeur en Java s'écrit "class class_name {public class_name(){} public ciass_name([paramList]){} ...// class body}". , et les paramètres de méthode respectifs doivent être différents.

Comment écrire une méthode constructeur en Java

L'environnement d'exploitation de ce tutoriel : système windows7, version java8, ordinateur DELL G3.

Le constructeur est une méthode spéciale d'une classe, utilisée pour initialiser un nouvel objet de la classe, et est automatiquement appelée après la création de l'objet (nouvel opérateur). Chaque classe en Java a un constructeur par défaut et peut en avoir plusieurs.

Les méthodes du constructeur Java ont les caractéristiques suivantes :

  • Le nom de la méthode doit être le même que le nom de la classe

  • Peut avoir 0, 1 ou plusieurs paramètres

  • Aucune valeur de retour, y compris void

  • Le type de retour par défaut est le type d'objet lui-même

  • ne peut être utilisé qu'en conjonction avec l'opérateur new

Il convient de noter que si un type de valeur de retour est défini pour le constructeur ou que void est utilisé pour déclarer que le constructeur n'a pas de valeur de retour, il ne sera pas utilisé au moment de la compilation. Une erreur se produira, mais Java traitera cette méthode dite constructeur comme une méthode ordinaire.

En ce moment, vous avez peut-être des questions, le constructeur n'a-t-il pas de valeur de retour ? Pourquoi ne peut-il pas être déclaré nul ?

En termes simples, c'est la syntaxe de Java. En fait, le constructeur d'une classe a une valeur de retour Lorsque le mot clé new est utilisé pour appeler le constructeur, le constructeur renvoie une instance de la classe. L'instance de cette classe peut donc être considérée comme la valeur de retour du constructeur. la valeur de retour du constructeur Le type de valeur est toujours la classe actuelle et il n'est pas nécessaire de définir un type de valeur de retour. Mais il faut faire attention à ne pas utiliser return dans le constructeur pour renvoyer un objet de la classe courante, car la valeur de retour du constructeur est implicite.

Remarque : les constructeurs ne peuvent pas être modifiés par statique, final, synchronisé, abstrait et natif (similaire à abstrait). Le constructeur est utilisé pour initialiser un nouvel objet, cela n'a donc aucun sens de le modifier avec static. Le constructeur ne peut pas être hérité par les sous-classes, il est donc inutile de le modifier avec final et abstract. Plusieurs threads ne créeront pas le même objet avec la même adresse mémoire en même temps, il n'est donc pas nécessaire d'utiliser une modification synchronisée. Si vous ne connaissez pas d'autres mots-clés que static et final, ils seront expliqués en détail plus loin dans le tutoriel.

Le format syntaxique de la méthode constructeur est le suivant :

class class_name {
    public class_name(){}    // 默认无参构造方法
    public ciass_name([paramList]){}    // 定义构造方法
    …
    // 类主体
}

Dans une classe, la méthode du même nom que la classe est la méthode constructeur. Chaque classe peut avoir plusieurs constructeurs, mais ils doivent chacun contenir des paramètres de méthode différents.

Exemple :

Les méthodes de construction incluent principalement la méthode de construction sans paramètre et la méthode de construction paramétrée. L'exemple est le suivant :

public class MyClass {
    private int m;    // 定义私有变量
    MyClass() {
        // 定义无参的构造方法
        m = 0;
    }
    MyClass(int m) {
        // 定义有参的构造方法
        this.m = m;
    }
}

Cet exemple définit deux méthodes de construction, à savoir la méthode de construction sans paramètre et la méthode de construction paramétrée. La définition de plusieurs méthodes portant le même nom avec des paramètres différents dans une classe est appelée surcharge de méthodes. Les deux constructeurs portent le même nom que la classe, MyClass. Différents constructeurs peuvent être appelés pour l'initialisation lors de l'instanciation de la classe.

Remarque : Il n'est pas nécessaire de définir le constructeur d'une classe. Si aucun constructeur n'est défini dans une classe, Java générera automatiquement un constructeur par défaut pour la classe. Le constructeur par défaut ne contient aucun paramètre et le corps de la méthode est vide. Si un ou plusieurs constructeurs sont explicitement définis dans une classe, Java ne fournit plus de constructeur par défaut.

Astuce : Le constructeur sans paramètre est également appelé constructeur Nullary. Seuls les constructeurs ajoutés automatiquement par le compilateur sont appelés constructeurs par défaut. Si vous écrivez un constructeur sans paramètres ni contenu, il n'est pas appelé constructeur par défaut (juste un constructeur Nullary). Bien qu'il ne s'agisse que d'une définition nominale, la différence entre les deux doit être distinguée lors de l'examen de certification.

Tutoriels vidéo associés recommandés : Tutoriel vidéo Java

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!

Déclaration:
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
Article précédent:Que sont les conteneurs Java ?Article suivant:Que sont les conteneurs Java ?