Eine abstrakte Klasse ist eine Klasse, die nicht instanziiert werden kann. Sie sind im Allgemeinen als erweiterte / Unterklassen gedacht und haben im Allgemeinen "abstrakte Methoden", die von Unterklassen implementiert werden müssen.
Ich habe eine Klasse mit einigen Standard- / gemeinsamen Funktionen. Ich benutze abstract classdafür: public interface ITypeNameMapper { string Map(TypeDefinition typeDefinition); } public abstract class TypeNameMapper : ITypeNameMapper { public virtual string Map(TypeDefinition typeDefinition) { if (typeDefinition is ClassDefinition classDefinition) { return Map(classDefinition); } ... throw new ArgumentOutOfRangeException(nameof(typeDefinition)); } protected …
Ich musste kürzlich eine abstrakte Basisklasse auf einem von mir verwendeten OSS aktualisieren, damit es durch virtuelle Erstellung besser getestet werden kann (ich konnte kein Interface verwenden, da es zwei kombiniert). Dies brachte mich zu der Überlegung, ob ich alle Methoden, die ich brauchte, als virtuell markieren sollte, oder ob …
Ich codiere mit einem Statusmuster für ein eingebettetes Gerät. Ich habe eine Basis- / abstrakte Klasse namens State und dann implementiert jede diskrete (konkrete) Zustandsklasse die abstrakte Zustandsklasse. In der Staatsklasse habe ich mehrere abstrakte Methoden. Wenn ich die abstrakten Methoden nicht in der diskreten (konkreten) Klasse implementiere, gibt Visual …
Ich bin in letzter Zeit besorgt über die Verwendung von abstrakten Klassen. Manchmal wird im Voraus eine abstrakte Klasse erstellt, die als Vorlage für die Funktionsweise der abgeleiteten Klassen dient. Das bedeutet mehr oder weniger, dass sie einige Funktionen auf hoher Ebene bieten, aber bestimmte Details auslassen, die von abgeleiteten …
Nehmen wir an, wir haben eine abstrakte Klasse und lassen diese Klasse nur abstrakte Methoden haben. Unterscheidet sich diese abstrakte Klasse von einer Schnittstelle, die nur dieselben Methoden hat? Ich möchte wissen, ob es sowohl philosophisch, objektiv als auch in der zugrunde liegenden Programmiersprachenimplementierung Unterschiede zwischen einer abstrakten Klasse mit …
Oft ist es eine gute Idee, eine abstrakte Basisklasse zu haben, um die Schnittstelle des Objekts zu isolieren. Das Problem ist, dass die Kopierkonstruktion IMHO in C ++ standardmäßig ziemlich kaputt ist und standardmäßig Kopierkonstruktoren generiert werden. Was sind die Fallstricke, wenn Sie eine abstrakte Basisklasse und Rohzeiger in abgeleiteten …
Ich habe eine, abstract class Adie eine abstrakte Methode deklariert doStuff. Derzeit gibt es viele Klassen, die von erben Aund diese implementieren doStuff. Die Instanzen der Klasse werden zur Laufzeit über AFactorybasierend auf Benutzereingaben initialisiert . Ursprünglich hatten alle Klassen den gleichen Parameter (die Benutzereingabe). Aber jetzt habe ich einen …
Ich habe ziemlich viel Java-Code, den ich überarbeite, um ihn wiederzuverwenden. Das Problem ist, dass es viele Teile gibt, die projektspezifisch sind, so dass am Ende eine höhere Kopplungsstufe zwischen dem Anwendungsprojekt und dem Codebasisprojekt besteht. Vergleichen Sie die folgenden Situationen, in denen wir eine Klasse verwenden, die die Verwendung …
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.