Maison > Java > javaDidacticiel > Qu'est-ce qu'un constructeur Java ? Comment utiliser le constructeur ?

Qu'est-ce qu'un constructeur Java ? Comment utiliser le constructeur ?

王林
Libérer: 2019-08-30 10:14:31
avant
2747 Les gens l'ont consulté

1. Comment utiliser la méthode constructeur

Créer un objet via une classe Ce processus est appelé instanciation. L'instanciation est réalisée en appelant le constructeur (également appelé constructeur).

1.1. Qu'est-ce qu'une méthode constructeur ?

Le nom de la méthode est le même que le nom de la classe (y compris les majuscules et les minuscules)
Il y a n'est pas de type de retour
Instancier un objet, le constructeur

public class Hero {
 
    String name; 
    float hp; 
    float armor; 
    int moveSpeed; 
    // 方法名和类名一样(包括大小写)
    // 没有返回类型
    public Hero() {
        System.out.println("实例化一个对象的时候,必然调用构造方法");
    }     
    public static void main(String[] args) {        //实例化一个对象的时候,必然调用构造方法
        Hero h = new Hero();
    }
}
Copier après la connexion

doit être appelé 1.2 Le constructeur implicite

Le constructeur de la classe Hero est le constructeur sans paramètre <🎜. >

public Hero(){ 
}
Copier après la connexion

. S'il n'est pas écrit, un

public class Hero {
     
    String name; //姓名
     
    float hp; //血量
     
    float armor; //护甲
     
    int moveSpeed; //移动速度
     
    //这个无参的构造方法,如果不写,
    //就会默认提供一个无参的构造方法
    //  public Hero(){ 
    //      System.out.println("调用Hero的构造方法");
    //  }
 
    public static void main(String[] args) {
        Hero garen =  new Hero();
        garen.name = "盖伦";
        garen.hp = 616.28f;
        garen.armor = 27.536f;
        garen.moveSpeed = 350;
         
        Hero teemo =  new Hero();
        teemo.name = "提莫";
        teemo.hp = 383f;
        teemo.armor = 14f;
        teemo.moveSpeed = 330;
    }  
     
}
Copier après la connexion

sera fourni par défaut 1.3 Si un constructeur avec des paramètres est fourni


Une fois qu'un constructeur avec des paramètres est fourni <🎜. > et il n'y a pas de fourniture explicite d'un constructeur sans paramètre

Alors le constructeur par défaut sans paramètre "n'existera plus"

public class Hero {
      
    String name; //姓名
      
    float hp; //血量
      
    float armor; //护甲
      
    int moveSpeed; //移动速度
      
    //有参的构造方法
    //默认的无参的构造方法就失效了
    public Hero(String heroname){ 
        name = heroname;
    }      
    public static void main(String[] args) {
        Hero garen =  new Hero("盖伦"); 
          
        Hero teemo =  new Hero(); //无参的构造方法“木有了”
    }  
      
}
Copier après la connexion

1.4 Surcharge des méthodes de constructeur


. Comme les méthodes ordinaires, les méthodes de construction peuvent également être surchargées

 public class Hero {
           
        String name; //姓名
           
        float hp; //血量
           
        float armor; //护甲
           
        int moveSpeed; //移动速度
           
        //带一个参数的构造方法
        public Hero(String heroname){ 
            name = heroname;
        }         
        //带两个参数的构造方法
        public Hero(String heroname,float herohp){ 
            name = heroname;
            hp = herohp;
        }           
        public static void main(String[] args) {
            Hero garen =  new Hero("盖伦"); 
            Hero teemo =  new Hero("提莫",383);
        }
         
    }
Copier après la connexion

Exercice : Méthode de construction

(Concevez une méthode de construction avec 4 paramètres pour Hero

Ces quatre paramètres sont

String heroName
float heroHP
float heroArmor
int heroMoveSpeed)

Réponse :

public class Hero {
        
    String name; //姓名
        
    float hp; //血量
        
    float armor; //护甲
        
    int moveSpeed; //移动速度
        
    //带一个参数的构造方法
    public Hero(String heroname){ 
        name = heroname;
    }      
    //带两个参数的构造方法
    public Hero(String heroname,float herohp){ 
        name = heroname;
        hp = herohp;
    }    public Hero(String heroName,float heroHP,float heroArmor,int heroMoveSpeed){ 
        name = heroName;
        hp = heroHP;
        armor = heroArmor;
        moveSpeed=heroMoveSpeed;
    }     
    public static void main(String[] args) {
        Hero garen =  new Hero("盖伦"); 
        Hero teemo =  new Hero("提莫",383);
        Hero db =  new Hero("死哥",400,27,360);
    }
      
}
Copier après la connexion

Pour en savoir plus sur le contenu connexe, veuillez visiter le site Web PHP chinois :

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!

Étiquettes associées:
source:cnblogs.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal