Maison > Java > javaDidacticiel > 06.Bases de Java - Surcharge et réécriture

06.Bases de Java - Surcharge et réécriture

黄舟
Libérer: 2017-02-27 10:23:24
original
1276 Les gens l'ont consulté

Concepts de base

Surcharge, c'est-à-dire Surcharge, c'est-à-dire Override ;

La différence est la suivante : la surcharge se produit dans la même classe ; l'écrasement se produit dans le processus d'héritage.


Surcharge

La surcharge a les caractéristiques suivantes :

  • Elle se produit dans la même classe

  • Parmi les fonctions surchargées, les noms de fonction sont les mêmes, mais les paramètres de fonction (numéro et type) sont différents.

  • La surcharge n'a rien à voir avec le type de retour

Explorons-la à travers un exemple.

public String print(String word) {    return word;
}// ①函数名称相同,参数个数不同public String print(String word, String title) {    return word + title;
}// ②函数名称相同,参数类型不同public String print(int num) {    return num + "";
}// ③函数名称相同,参数类型、个数不同public String print(int num, int num2) {    return num + num2 + "";
}// ④与返回类型无关public int print() {    return 100;
}
Copier après la connexion

Override

Le remplacement présente les caractéristiques suivantes :

  • Exigences de la méthode pour que le remplacement se produiseLe nom de la méthode, le type de retour, le numéro/type de paramètre doivent être exactement les mêmes. La méthode

  • peut utiliser l'annotation @Override pour vérifier si elle est utilisée. est une écriture en double.

  • Les droits d'accès des méthodes de sous-classe sont supérieurs à ceux de la classe parent.

  • Les méthodes de sous-classe ne peuvent générer que des exceptions plus petites ou aucune exception que les méthodes de classe parent.

  • La méthode remplacée ne peut pas avoir de modificateurs final, privé, statique. Parce que les méthodes modifiées avec final ou private ne peuvent pas être héritées et que les méthodes statiques ne sont liées qu'aux classes. Elles sont réécrites sous la forme, mais en fait la sous-classe définit simplement sa propre méthode statique.

Ce qui suit est un exemple de réécriture :

class Parent {
    String word ="Parent";    void print(){
    }
}

class Son extends Parent {
    String word ="Son";    @Override
    void print(){
        System.out.println(word);
    }
}

class Grandson extends Son {
    String word ="Grandson";    @Override
    void print(){
        System.out.println(word+"-"+super.word);
    }
}
Copier après la connexion

Ce qui précède est le contenu de 06.Java Basics - Overloading & Rewriting. Pour plus de contenu connexe, veuillez. Suivez le site PHP chinois (www.php.cn) !


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