L'héritage est un moyen de réutiliser le code des objets existants, ou d'établir un sous-type à partir d'un objet existant, ou les deux, selon la prise en charge du langage de programmation.
De: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Je pense toujours que c'est vrai même après dix ans. L'héritage est un moyen intéressant de changer de comportement. Mais nous savons qu’elle est fragile, car la sous-classe peut facilement émettre des hypothèses sur le contexte dans lequel une méthode qu’elle substitue est appelée. Il existe …
Ma compréhension actuelle de l'implémentation d'héritage est qu'il ne faut étendre une classe que si une relation IS-A est présente. Si la classe parent peut en outre avoir des types enfants plus spécifiques avec des fonctionnalités différentes, mais partagera des éléments communs résumés dans le parent. Je remets en question …
Est-il préférable d'utiliser List<string>dans les annotations de type ou StringListoùStringList class StringList : List<String> { /* no further code!*/ } Je suis tombé sur plusieurs d'entre eux dans Irony .
J'ai récemment commencé à regarder le développement Android. Cela m'a ramené dans le monde du développement de logiciels Java. La dernière fois que j’ai travaillé avec Java, je l’avouerai, je ne comprenais pas autant la POO que je le pense maintenant. Ayant principalement utilisé le C # dans ma carrière, …
Je suis tout à fait conscient que d' pylintautres outils d'analyse statique ne savent pas tout et qu'il faut parfois désobéir à leurs conseils. (Ceci s'applique à différentes classes de messages, pas seulement à l' conventionart.) Si j'ai des cours comme class related_methods(): def a_method(self): self.stack.function(self.my_var) class more_methods(): def b_method(self): …
J'ai une classe de base, Base. Il a deux sous-classes, Sub1et Sub2. Chaque sous-classe a quelques méthodes supplémentaires. Par exemple, Sub1a Sandwich makeASandwich(Ingredients... ingredients)et Sub2a boolean contactAliens(Frequency onFrequency). Puisque ces méthodes prennent des paramètres différents et font des choses complètement différentes, elles sont complètement incompatibles et je ne peux pas …
Je ne comprends pas ce que pourraient être les problèmes si un constructeur était hérité d'une classe de base. Cpp Primer Plus dit: Les constructeurs diffèrent des autres méthodes de classe en ce qu'ils créent de nouveaux objets, alors que d'autres méthodes sont appelées par des objets existants . C'est …
Par exemple, j'avais vu des codes créer un fragment comme celui-ci: Fragment myFragment=new MyFragment(); qui déclare une variable sous la forme Fragment au lieu de MyFragment, lequel MyFragment est une classe enfant de Fragment. Je ne suis pas satisfait de cette ligne de codes car je pense que ce code …
Si ma classe implementspossède une interface, puis-je dire que je suis l'héritage? Je sais que quand une classe une extendsautre classe, c'est l'héritage.
Supposons que j'ai un gestionnaire de classe dérivé d'un employé de classe de base et que l'employé ait une méthode getEmail () héritée par le gestionnaire . Dois-je tester que le comportement de la méthode getEmail () d'un manager est en fait le même que celui d'un employé? Au moment …
L'héritage, le polymorphisme et l'encapsulation sont les trois caractéristiques les plus importantes et les plus distinctes de la POO, et d'après eux, l'héritage a de fortes statistiques d'utilisation de nos jours. J'apprends JavaScript, et ici, ils disent tous qu'il a un héritage prototypique, et les gens partout dans le monde …
Je me demande ce qui est mieux en termes de bonne conception OOP, de code propre, de flexibilité et d'éviter les odeurs de code à l'avenir. Situation d'image, où vous avez beaucoup d'objets très similaires que vous devez représenter en tant que classes. Ces classes sont sans aucune fonctionnalité spécifique, …
Lors d'une revue de code aujourd'hui, un de mes collègues a dit quelque chose d'intéressant: prototypen'est utile que lorsque vous avez besoin d'héritage - et quand l'héritage est-il une bonne idée ? J'y ai pensé et j'ai réalisé que j'utilisais généralement l'héritage pour contourner le code mal conçu au départ. …
Dans le passé, j'ai utilisé l'héritage pour permettre l'extension des formulaires Windows dans mon application. Si tous mes formulaires avaient des contrôles, des illustrations et des fonctionnalités communs, je créerais un formulaire de base implémentant les contrôles et les fonctionnalités communs, puis autoriserais d'autres contrôles à hériter de ce formulaire …
J'ai lu que le principe de substitution de Liskov est violé si: Les conditions préalables sont renforcées, ou Les postconditions sont affaiblies Mais je ne sais pas encore comment ces deux points violeraient le principe de substitution de Liskov. Quelqu'un peut-il expliquer avec un exemple. Plus précisément, comment l'une des …
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.