Leere Interfaces werden, soweit ich das beurteilen kann, im Allgemeinen als schlechte Praxis eingestuft - insbesondere, wenn Dinge wie Attribute von der Sprache unterstützt werden. Wird eine Schnittstelle jedoch als "leer" betrachtet, wenn sie von anderen Schnittstellen erbt? interface I1 { ... } interface I2 { ... } //unrelated to …
Beim Durchsuchen des Java Collections Framework ist mir aufgefallen, dass einige der Schnittstellen den Kommentar enthalten (optional operation). Diese Methoden ermöglichen das Implementieren von Klassen über eine, UnsupportedOperationExceptionwenn sie diese Methode einfach nicht implementieren möchten. Ein Beispiel hierfür ist die addAllMethode in der Set Interface. Nun, wie in dieser Reihe …
Beispielsweise: Sagen wir , ich Klassen A, B, C. Ich habe zwei Schnittstellen, nennen wir sie IAnimalund IDog. IDogerbt von IAnimal. Aund Bsind IDogs, während Ces nicht ist, aber es ist ein IAnimal. Der wichtige Teil ist, dass es IDogkeine zusätzlichen Funktionen gibt. Es wird nur verwendet, um bestimmte Methoden …
Handelt es sich beispielsweise um eine Urheberrechtsverletzung, wenn ich eine Klasse namens Random mit genau demselben Zweck und denselben Methodensignaturen wie die Microsoft-Klasse .Net System.Random schreibe? Macht es einen Unterschied, in welcher Sprache es geschrieben ist? In diesem Fall möchte ich eine Random-Klasse für die Verwendung in ActionScript schreiben, der …
Ich lese das Buch Prinzipien, Praktiken und Muster der Abhängigkeitsinjektion und lese über das Konzept der undichten Abstraktion, das im Buch gut beschrieben wird. In diesen Tagen überarbeite ich eine C # -Codebasis mithilfe der Abhängigkeitsinjektion, sodass asynchrone Aufrufe verwendet werden, anstatt solche zu blockieren. Dabei erwäge ich einige Schnittstellen, …
Nehmen wir an, wir machen einen Parser. Eine Implementierung könnte sein: public sealed class Parser1 { public string Parse(string text) { ... } } Oder wir könnten den Text stattdessen an den Konstruktor übergeben: public sealed class Parser2 { public Parser2(string text) { this.text = text; } public string Parse() …
Dies gilt sowohl für Java SE als auch für Android, da die Verträge identisch sind. CharSequence-Dokumentation für Java SE CharSequence-Dokumentation für Android CharSequencedefiniert keine contains(CharSequence)Methode. Ich kann anscheinend keinen Grund finden, warum und es wäre sehr nützlich, wenn ich nicht anrufen müsste CharSequence#toString(), um nach einer Folge von Zeichen zu …
Ich habe daran gearbeitet, Code zu überarbeiten, und ich glaube, ich habe den ersten Schritt im Kaninchenbau getan. Ich schreibe das Beispiel in Java, aber ich nehme an, es könnte agnostisch sein. Ich habe eine Schnittstelle Foodefiniert als public interface Foo { int getX(); int getY(); int getZ(); } Und …
Ich habe zwei Objekte, die eine 'Bar / Club' darstellen (ein Ort, an dem Sie trinken / Kontakte knüpfen). In einem Szenario benötige ich den Balkennamen, die Adresse, die Entfernung und den Slogon In einem anderen Szenario benötige ich den Balkennamen, die Adresse, die Website-URL und das Logo Ich habe …
Java unterscheidet klar zwischen classund interface. (Ich glaube, C # auch, aber ich habe keine Erfahrung damit). Beim Schreiben von C ++ gibt es jedoch keine sprachlich erzwungene Unterscheidung zwischen Klasse und Schnittstelle. Folglich habe ich die Benutzeroberfläche immer als Problemumgehung für das Fehlen einer Mehrfachvererbung in Java angesehen. Eine …
Angesichts des existenziellen Typs T = ∃X.{op₁:X, op₂:X→boolean} und diese generische Java-Schnittstelle: interface T<X> { X op₁(); boolean op₂(X something); } Was sind die grundlegenden Unterschiede zwischen dem existenziellen Typ und der Java-Schnittstelle? Offensichtlich gibt es syntaktische Unterschiede und die Objektorientierung von Java (die auch Details wie versteckte thisParameter usw. …
Ich spiele seit einiger Zeit mit der Entwicklung von C # für Windows und ASP.net MVC. In einigen Bereichen bin ich jedoch noch unklar. Ich versuche, den grundlegenden Unterschied zwischen und Leistungsproblemen bei der Verwendung und dem Austausch ähnlicher Arten von generischen Sammlungsschnittstellen zu verstehen . Was ist der grundlegende …
Ich habe vor kurzem angefangen, mich mit Designmustern zu befassen, und eine Sache, die ich codiere, würde perfekt zum Strategiemuster passen, abgesehen von einem kleinen Unterschied. Im Wesentlichen benötigen einige (aber nicht alle) meiner Algorithmen einen oder zwei zusätzliche Parameter, die an sie übergeben werden. Also muss ich entweder Übergeben …
Während einer meiner Studien zu den Feinheiten von C # stieß ich auf eine interessante Passage zur expliziten Implementierung von Schnittstellen. While this syntax is quite helpful when you need to resolve name clashes, you can use explicit interface implementation simply to hide more "advanced" members from the object level. …
Hintergrund Ich habe ein Projekt, das von der Verwendung eines bestimmten Hardwaregerätetyps abhängt, während es nicht wirklich wichtig ist, wer dieses Hardwaregerät herstellt, solange es das tut, wofür ich es brauche. Abgesehen davon weisen sogar zwei Geräte, die dasselbe tun sollen, Unterschiede auf, wenn sie nicht vom selben Hersteller hergestellt …
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.