En informatique, le polymorphisme est une fonctionnalité du langage de programmation qui permet de gérer les valeurs de différents types de données de manière uniforme.
J'ai une solide compréhension de la plupart des théories OO, mais la seule chose qui me déroute beaucoup, ce sont les destructeurs virtuels. J'ai pensé que le destructeur est toujours appelé, peu importe quoi et pour chaque objet de la chaîne. Quand êtes-vous censé les rendre virtuels et pourquoi?
Je suis un peu confus sur la façon dont les génériques Java gèrent l'héritage / polymorphisme. Supposons la hiérarchie suivante - Animal (parent) Chien - Chat (Enfants) Supposons donc que j'ai une méthode doSomething(List<Animal> animals). D'après toutes les règles d'héritage et de polymorphisme, je suppose que a List<Dog> est a …
En termes de Java, quand quelqu'un demande: qu'est-ce que le polymorphisme? Serait en surcharge ou outrepasser serait-il une réponse acceptable? Je pense qu'il y a un peu plus que cela. SI vous aviez une classe de base abstraite qui définissait une méthode sans implémentation et que vous définissiez cette méthode …
On m'a posé cette question dans un examen de fin de module à livre ouvert aujourd'hui et je me suis retrouvé perdu. Je lisais Head first Javaet les deux définitions semblaient être exactement les mêmes. Je me demandais simplement quelle était la différence PRINCIPALE pour ma propre tranquillité d'esprit. Je …
Est-ce mal d'écrire: class A { public: virtual ~A() = 0; }; pour une classe de base abstraite? Au moins cela compile dans MSVC ... Est-ce que ça plantera au moment de l'exécution?
Vous savez comment dans Eclipse, appuyer F3sur une méthode vous amènera à sa déclaration? Eh bien, j'ai une méthode qui fait partie d'une interface; cliquer F3dessus m'amène naturellement à l'interface de déclaration. De toute évidence, il existe un objet implémentant cette interface et c'est là que la méthode est réellement …
J'écris un module et je souhaite avoir une hiérarchie d'exceptions unifiée pour les exceptions qu'il peut soulever (par exemple, hériter d'une FooErrorclasse abstraite pour toutes les fooexceptions spécifiques du module). Cela permet aux utilisateurs du module d'attraper ces exceptions particulières et de les gérer distinctement, si nécessaire. Mais la plupart …
J'ai deux classes Java: B, qui étend une autre classe A, comme suit: class A { public void myMethod() { /* ... */ } } class B extends A { public void myMethod() { /* Another code */ } } Je voudrais appeler le A.myMethod()de B.myMethod(). Je viens du monde …
AUTANT QUE JE SACHE: C ++ fournit trois types différents de polymorphisme. Fonctions virtuelles Surcharge du nom de la fonction Surcharge de l'opérateur En plus des trois types de polymorphisme ci-dessus, il existe d'autres types de polymorphisme: Durée au moment de la compilation polymorphisme ad hoc polymorphisme paramétrique Je sais …
Y a-t-il une différence entre List<Map<String, String>> et List<? extends Map<String, String>> ? S'il n'y a pas de différence, quel est l'avantage d'utiliser ? extends?
Quel est l'avantage de rendre une méthode privée virtuelle en C ++? J'ai remarqué cela dans un projet C ++ open source: class HTMLDocument : public Document, public CachedResourceClient { private: virtual bool childAllowed(Node*); virtual PassRefPtr<Element> createElement(const AtomicString& tagName, ExceptionCode&); };
Prenez ce qui suit: class A {} class B : A {} class C { C() { var b = new B(); Foo(b); Foo2(ref b); // <= compile-time error: // "The 'ref' argument doesn't match the parameter type" } void Foo(A a) {} void Foo2(ref A a) {} } Pourquoi …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.