Maison  >  Article  >  Java  >  qu'est-ce que le constructeur Java

qu'est-ce que le constructeur Java

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-11-12 09:26:444079parcourir

qu'est-ce que le constructeur Java

Le constructeur est membre du système orienté objet. Le constructeur peut être appelé constructeur. Son nom de fonction est le même que le nom de classe. type de valeur de retour et aucune valeur de retour spécifique. Le constructeur est une fonction appelée lors de la construction d'un objet créé. Sa fonction est d'initialiser l'objet. Tous les objets créés doivent être initialisés via le constructeur. Si aucun constructeur n'est défini dans une classe, la classe aura un constructeur par défaut avec des paramètres vides. Si un constructeur spécifié est défini dans une classe, il n'y a pas de constructeur par défaut dans la classe.

Quand nous naissons, certaines personnes reçoivent des noms après leur naissance, mais certaines personnes reçoivent déjà des noms dès leur naissance. Alors, comment attribuer une valeur à un objet une fois celui-ci créé en Java ?

quest-ce que le constructeur Java

quest-ce que le constructeur Java

1. Le rôle du constructeur :

Le rôle du constructeur : effectuer des opérations sur l'initialisation de l'objet.

Comme indiqué :

quest-ce que le constructeur Java

2. La différence entre les constructeurs et les fonctions ordinaires :

(1) Général Les fonctions sont utilisées pour définir la fonctionnalité qu'un objet doit avoir. Le constructeur définit le contenu que l'objet doit avoir lors de sa création avant d'appeler la fonction. C'est-à-dire le contenu d'initialisation de l'objet.

(2) Le constructeur est appelé par jvm lorsque l'objet est créé pour initialiser l'objet. Généralement, une fonction est exécutée lorsque l'objet appelle la fonction après la création de l'objet.

(3) Les fonctions ordinaires peuvent être appelées plusieurs fois à l'aide d'objets, et le constructeur est appelé lors de la création de l'objet.

(4) Le nom de fonction du constructeur doit être le même que le nom de la classe, et les fonctions ordinaires doivent uniquement se conformer aux règles de dénomination des identifiants.

(5) Le constructeur n'a pas de type de valeur de retour.

3. Détails à prendre en compte dans le constructeur :

(1) Lorsqu'aucun constructeur n'est défini dans la classe, le système attribuera un paramètre vide à le constructeur de la classe. C'est le constructeur par défaut de la classe. Lorsqu'un constructeur est personnalisé dans une classe, le constructeur par défaut disparaît.

Remarque : cela peut être vérifié via la commande javap.

(2) Plusieurs constructeurs peuvent être définis dans une classe pour différentes initialisations. Plusieurs constructeurs existent dans une classe et sont matérialisés sous forme de surcharge. Parce que les noms des constructeurs sont tous les mêmes.

class Perosn{
private int id;
private String name;
private int age;
public Perosn(){
cry();
}
public Perosn(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void cry(){
System.out.println("哇哇哇....");
}
}

Question : Chaque enfant doit pleurer à sa naissance. Ce code a deux constructeurs. Si chaque enfant doit pleurer à sa naissance, cry() fonctionnera, mais cela entraînera un problème de duplication de code. , alors comment le résoudre ? Construisez des blocs de code.

4. Bloc de code de construction :

La fonction du bloc de code de construction : initialiser uniformément tous les objets.

class Perosn{
private int id;
private String name;
private int age;
{
cry();// 每个Person对象创建出来都会执行这里的代码
}
public Perosn(){
cry();
}
public Perosn(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void cry(){
System.out.println("哇哇哇....");
}
}

Fonctions spécifiques :

1 : Initialiser l'objet. S'exécute dès que l'objet est créé et est prioritaire sur le constructeur.

2 : Différence avec le constructeur

(1) La différence entre le bloc de code construit et la fonction constructeur est d'initialiser uniformément tous les objets, et la fonction constructeur est. L'objet correspondant est initialisé.

(2) La fonction du bloc de code de construction : Sa fonction est d'extraire les informations communes dans toutes les méthodes de construction.

Par exemple, un enfant pleure uniformément à sa naissance

Le code est le suivant :

class Boy {
 
String name;
int age;
String gender;
     // 构造代码块,给所有对象进行初始化。
{
System.out.println("哭。。。");
}
     
Boy() {
System.out.println("无参构造");
}
 
Boy(String n, int a, String g) {
name = n;
age = a;
gender = g;
System.out.println("有参构造");
}
 
void run() {
System.out.println("跑...");
}
 
}
 
class Demo9 {
 
public static void main(String[] args) {
 
System.out.println();
Boy b = new Boy();
 
Boy b2 = new Boy("jack", 1, "男");
 
}
}

php Site chinois, un grand nombre de gratuits Tutoriels d'introduction à Java, bienvenue à l'étude en ligne !

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