Qu'est-ce qu'une méthode abstraite?
Dans la programmation orientée objet, des sous-programmes appelés «méthodes» sont utilisés pour effectuer des fonctions dans un programme. Ces méthodes consistent en des instructions de programmation qui effectuent une action, configurent les paramètres d'entrée pour personnaliser les actions et peuvent renvoyer ou sortir une valeur d'une sorte d'objet ou de classe. Les méthodes sont les actions effectuées dans un programme à partir d'une certaine classe ou dans un objet, et sont utilisées pour accéder et manipuler les données stockées dans un objet. Il existe de nombreuses méthodes différentes et chacune a une utilisation particulière. Un type spécifique qui est effectué à partir d'une super classe abstrait et hérité par les sous-classes est connu comme une méthode abstraite.
Généralement, la méthode abstraite effectue peu ou pas d'implémentation au sein de sa super classe abstraite. Les codes contenus dans ce type de méthode sont considérés comme des codes factice et ne sont pas implémentés eux-mêmes. Cela ne signifie pas que la méthode abstraite spécifique dans une classe abstraite particulière n'est pas utilisée. Au contraire, la méthode abstraite agit comme un modèle ou un lieuHolder pour les sous-classes pour terminer la mise en œuvre de la méthode.
Les super classes peuvent contenir plusieurs sous-classes, et toutes les sous-classes d'une super classe ont certains états et comportements similaires. Les classes abstraites sont donc un type de classe virtuelle qui présente l'héritage virtuel. Cela signifie que toute sous-classe dérivée d'une super classe hérite des restrictions de la super classe dont il est dérivé. Par conséquent, les méthodes de sous-classes sont dérivées des méthodes abstraites de super classes. Lors de la programmation et de l'utilisation de méthodes abstraites, le programmeur doit déclarer le résumé de classe plutôt que virtuel.
Par exemple, une super classe d '«objets graphiques» contient les sous-classes «cercle», «carré», etc. En tant que tels, tous les cercles et carrés ont les mêmes états - orientation, position, couleur de remplissage, couleur de ligne - et comportements - moveleto, redimensionner, tourner, tirer - comme «OB graphiquejects. " Toutes les sous-classes de cette super classe ont les mêmes qualités, mais elles sont implémentées de différentes manières.
L'utilisation d'une méthode abstraite permet la généralisation au niveau supérieur, ou super classe, et les spécifications aux niveaux inférieurs ou sous-classes. Cette hiérarchie minimise la quantité de programmation de méthode à chaque sous-classe spécifique. L'utilisation de ces méthodes permet également l'idémpotence des sous-classes, ce qui signifie que si une méthode est implémentée encore et encore, le résultat est le même à chaque fois.