Cet article vous apporte une introduction comparative à la couverture des méthodes et à la surcharge des méthodes en Java. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Signature de méthode
La signature de méthode fait référence au type de paramètre, à l'ordre et au numéro de la méthode. Elle n'inclut pas le nom de la méthode.
<.>Surcharge
La surcharge doit remplir les conditions suivantesLe nom de la méthode est le même
Au moins un des types de paramètres , le numéro et l'ordre de la méthode sont différentsLe type de retour de la méthode peut être différentLe modificateur d'accès de la méthode peut être différentoverride
si définie dans une sous-classe Une méthode dont le nom, le type de retour et la signature du paramètre correspondent exactement au nom, au type de retour et à la signature du paramètre d'une méthode dans la classe parent, alors la sous-classe remplace la méthode du parent classe. Le remplacement doit remplir les conditions suivantes :
//创建父类型的变量,引用子类的实例 Parent parent = new Child(); //调用的是子类实例的方法,如果子类覆盖这个方法时,缩小了访问权限,可能会造成无法访问到子类实例的这个方法 parent.method();
Les méthodes privées de la classe parent ne peuvent pas être remplacées par les sous-classesLes méthodes non abstraites de la classe parent peuvent être remplacées par les sous-classes en tant que méthodes abstraites Similitudes et différences1. SimilitudesLes noms de méthodes doivent être cohérents2 DifférencesLa couverture des méthodes nécessite que les signatures des paramètres soient cohérentes, tandis que la méthode. la surcharge nécessite que les signatures des paramètres soient incohérentes.Exigences de couverture Si le type de retour est cohérent ou si le type de retour de la méthode de sous-classe est plus petit que la méthode de la classe parent, la surcharge n'impose aucune restriction à ce sujet.
La substitution ne peut être utilisée que pour les sous-classes pour remplacer les méthodes de la classe parent, et la surcharge est utilisée pour les méthodes de la même classe. Toutes les méthodes (y compris les méthodes héritées de la classe parent
Il existe des exigences pour). remplaçant les autorisations d'accès et lançant des exceptions de méthodes, et il n'y a aucune restriction sur la surcharge
L'une des méthodes de la classe parent A ne peut être remplacée qu'une seule fois par une sous-classe, et une méthode peut être surchargée plusieurs fois dans le. classe dans laquelle il se trouve.
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!