[JAVA] À propos du polymorphisme

image.png

Je le lis toujours quand je l'explique, donc je le résume

Qu'est-ce que le polymorphisme?

** Manière courante d'envoyer des messages **

--Mécanisme de partage des messages passés aux classes enfants lors de la création d'une classe parent --Mécanisme de partage de messages à l'aide d'interfaces (en Java)

Fonctionnalité

Aspect conceptuel (monde réel)

** Établi comme un verbe pour chacun des concepts supérieur et inférieur **

Un verbe commun tient

--Par exemple, "animal", "humain" et "chien"

J'ai une coupe

--Une option (informations supplémentaires) établit un comportement unique --Par exemple, "animal", "humain" et "chien" ―― "Animal" "mange" -> On ne décide pas comment manger

Aspect technique (programmation)

** L'instance qui reçoit l'argument se comporte différemment selon la classe **

Établi avec un nom de méthode commun

Lors de l'utilisation de "l'héritage" dans la technologie de programmation

Animal.java


public abstract class Animal {
    public abstract void eat();
}

Human.java


public class Human extends Animal {
    public void eat() {
        System.out.println("Manger croustillant");
    }
}

Dog.java


public class Dog extends Animal {
    public void eat() {
        System.out.println("Gab flottant");
    }
}

Chef.java


public class Chef {
    public void serve(Animal animal) {
        System.out.println("S'il vous plaît");
        System.out.println(animal.eat());
    }
}

Lors de l'utilisation de "l'interface" dans la technologie de programmation

Eater.java


public interface Eater {
    public void eat();
}

Human.java


public class Human implements Eater {
    public void eat() {
        System.out.println("Manger croustillant");
    }
}

Dog.java


public class Dog implements Eater {
    public void eat() {
        System.out.println("Gab flottant");
    }
}

Chef.java


public class Chef {
    public void serve(Eater eater) {
        System.out.println("S'il vous plaît");
        System.out.println(eater.eat());
    }
}

point

Article associé

Résumé des raisons pour lesquelles nous le rendons orienté objet

Informations sur le livre

Akira Hirasawa (Auteur) Pourquoi le rendre orienté objet, 2e édition https://amzn.to/2VSrzwe

Sentiments divers

Même les modèles de conception et la refactorisation peuvent être bien appliqués si vous avez cette perspective.

Recommended Posts

À propos du polymorphisme
Polymorphisme
À propos du polymorphisme Java Super ()
À propos =
Polymorphisme
Quiz sur le polymorphisme
À propos de Kotlin
À propos de attr_accessor
À propos de Hinemos
À propos des rails 6
À propos du printemps ③
[Java] Polymorphisme
À propos d'énumération
À propos facultatif
À propos du hachage
À propos de JitPack
À propos de ça ()
À propos de l'encapsulation
À propos de JAVA_HOME
À propos de statique
À propos des exceptions
java (polymorphisme)
À propos de la portée
[Maven] À propos de Maven
Encapsulation, polymorphisme
À propos de l'interface Java
[Java] À propos des fonctionnalités de Java 12
À propos du routage des rails
À propos de la complexité cyclique
À propos de la gestion des exceptions
À propos des génériques AsyncTask
À propos des symboles Ruby
À propos de l'héritage de classe.
À propos de Ruby Hash
À propos des méthodes singulières
À propos des outils de création
Mâchez l'API
[À propos du double hachage]
Quelque chose à propos de java
Où est Java
À propos de la méthode de HttpServlet ()
À propos des fonctionnalités Java
À propos de SIGNING_REGION: NoSuchFieldError
À propos de la méthode
À propos de la classe standard