statische Variablen in Interface - Vererbung?

faetzminator

Gesperrter Benutzer
Sali zäme

wir haben in unseren Projekten immer mal wieder Interfaces, welche irgendwelche finale, statische Werte definieren. Nun verwende ich gerne static Imports, um die Aufrufe abzukürzen. Allerdings kam mir die Idee, dass man auch einfach das Interface implementieren kann und dann logischerweise alle Variablen ohne Import verwenden kann.
Dieses Vorgehen kann man z.B. auch bei Swing erkennen. Da haben viele Klassen die SwingConstants implementiert. Aber meiner Meinung nach ist das irgendwie nicht gerade schönes OOP... Wie steht ihr dazu?

Gruess, faetzminator
 
T

Tomate_Salat

Gast
Ich würde das Interface nur implementieren, wenn ich entweder Methoden definiere oder es als eine Art Markierung fungiert (z.B: Serializable,...). Wenn daraus nur Konstante Werte entnehmen werden sollen, würde ich einen import machen.
 
M

maki

Gast
Sehe das so wie tfa, das "constant interface" Antipattern war übrigens der Grund weswegen statische imports in Java 1.5 eingeführt wurden.

PS: Anstatt Marker-Interfaces nimmt man heute Annotationen ;)
 
B

bygones

Gast
Sind static imports nun gut, oder einfach nur die Weiterführung eines Weges, den man nicht beschreiten sollte?

Ich krieg' immer eine Hasskappe, wenn ich static Imports sehe...

statische imports sind ok, constante interfaces nicht. Das eine hat mit den anderen nix zu tun.

Man kann sich generell streiten ob static ueberhaupt was in einer oop sprache zu suchen hat, aber auch das ist ein anderes thema
 
M

maki

Gast
Sind static imports nun gut, oder einfach nur die Weiterführung eines Weges, den man nicht beschreiten sollte?

Ich krieg' immer eine Hasskappe, wenn ich static Imports sehe...
Naja, static imports sollten eben selten eingesetzt werden, wird auch so empfohlen.

Nützlich sind sie zB. bei JUnit, ein [c]assertEquals(...);[/c] ist mir immer lieber als ein [c]Assert.assertEquals(...);[/c], früher hatte man ja extra geerbt um diese Methoden direkt aufrufen zu können.
 

Landei

Top Contributor
Um in Java wenigstens ein bisschen in Richtung DSL gehen zu können, braucht man die bessere Typinferenz (seit Java 7 mit Diamond-Operator vielleicht nicht mehr ganz so sehr) bei static-Methoden, was wiederum nur mit statischen Imports nach etwas aussieht. OO ist das nicht unbedingt, hilft aber ungemein:

Java:
package foo;
import java.util.*;
class Util {
   public static <A,B> Map<A,B> Map(){ return new HashMap<A,B>(); }
}


package bar;
import static foo.Util.*;
import java.util.Map;
class Example {
   private Map<String, Integer> map = Map(); //keine Warnung, Util.Map kann den richtigen Typ ermitteln
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Classloading und statische Variablen Allgemeine Java-Themen 2
D Wann sollte ich statische Methoden und Variablen benutzen? Allgemeine Java-Themen 44
J Statische Variablen, Threadübergreifend. Allgemeine Java-Themen 4
A [SOLVED] Classpath und statische Variablen Allgemeine Java-Themen 6
temi Private statische Hilfsmethoden Allgemeine Java-Themen 33
T statische Variable und nicht-statische Methode Allgemeine Java-Themen 2
rentasad Design-Frage - Interfaces, Klassen, statische Methoden Allgemeine Java-Themen 3
P "Overriden statische Methode" Statische Methode die vererbt wird Allgemeine Java-Themen 5
N Threads statische Methoden in Threads Allgemeine Java-Themen 5
M Zeiger auf statische Variable Allgemeine Java-Themen 1
S Kapselung Statische Helper Klassen Allgemeine Java-Themen 5
R Statische Klasse: Best practice mit flags (2) Allgemeine Java-Themen 3
N Klasse rausfinden, an der eine statische Methode aufgerufen wurde ? Allgemeine Java-Themen 10
R statische initialisierer Allgemeine Java-Themen 7
S statische Methoden und Vererbung Allgemeine Java-Themen 6
M Zwingen eine statische Methode zu importieren Allgemeine Java-Themen 5
heart_disease Designfrage: Statische Konfigurationsklasse Allgemeine Java-Themen 10
S statische Interfaces..? Allgemeine Java-Themen 6
M Wann Membermethoden, wann statische Utility-Methoden? Allgemeine Java-Themen 24
S Innere Klassen und die statische Methode access$x Allgemeine Java-Themen 5
S Statische Methoden in abstrakte Klassen deklarieren? Allgemeine Java-Themen 17
M Paralleler Zugriff auf statische Methode Allgemeine Java-Themen 5
J Statische Methoden in Interfaces? Allgemeine Java-Themen 10
F Statische Methode in abstrakter Superklasse definieren Allgemeine Java-Themen 4
B Statische Methode? Komisch. Allgemeine Java-Themen 5
G Wann statische Methoden, statische Attributen? Allgemeine Java-Themen 7
G Statische Methoden erzwingen Allgemeine Java-Themen 2
H Zugriff auf statische Variable synchronisieren Allgemeine Java-Themen 4
S Tiefe Kopie einer Baumstruktur als statische Methode Allgemeine Java-Themen 8
M statische Methode per reflection aufrufen Allgemeine Java-Themen 2
M statische regex und vergleiche oder immer wieder compilen Allgemeine Java-Themen 2
S Statische Methode oder nicht? Allgemeine Java-Themen 5
T in einer statischen Methode ein nicht statische Aufrufen Allgemeine Java-Themen 5
D Statische, generische Methode will nicht. Allgemeine Java-Themen 2
H Zugriff auf statische Methode durch mehrere User Allgemeine Java-Themen 19
S Auf statische Funktionen mit Java Reflections zugreifen Allgemeine Java-Themen 3
C Erste Schritte Variablen in abhängigkeit von Git branch Allgemeine Java-Themen 7
Fabiator Variablen Variablen Zählen Allgemeine Java-Themen 3
S Mit Methoden kann man definieren für was <T> steht. Geht das auch irgendwie für Variablen? Allgemeine Java-Themen 12
berserkerdq2 Labels in IJVM sind keine lokalen Variablen oder? Allgemeine Java-Themen 2
O Fehler bei Variablen Allgemeine Java-Themen 2
N File Path mit Variablen angeben Allgemeine Java-Themen 1
nonickatall Methoden Kann man Klassen/Methoden aus Variablen heraus aufrufen? Allgemeine Java-Themen 6
R Geometry erstellen die abhängig von Variablen ist Allgemeine Java-Themen 6
O Formatierte String ausgabe bei vier Variablen in einer Zeile Allgemeine Java-Themen 1
P static Blocks und variablen Allgemeine Java-Themen 41
S Klassen Einfügen von unbekannter menge an Variablen in eine Klasse mithilfe von ASM Allgemeine Java-Themen 5
V Datentypen Graphikrechner 2/Strings und Variablen in Doubles umwandeln Allgemeine Java-Themen 6
S Kann man Variablen oder Felder definieren deren Typ zwei Interfaces ist..? Allgemeine Java-Themen 9
M Wie kann man eine void Methode mit Variablen von zwei verschiedenen Objekten ausführen? Allgemeine Java-Themen 15
B Übernommene Variablen(werte) aus der Main-Klasse ändern? Allgemeine Java-Themen 9
D BlueJ, Variablen die mehrfach vorkommen gleichzeitig umbenennen Allgemeine Java-Themen 3
C Variablen Variablen mit unendlichem Wert Allgemeine Java-Themen 22
J Variablen Mehrere int-variablen in txt abspeichern und danach wieder auslesen Allgemeine Java-Themen 1
T Maximale Felder maximale Variablen Allgemeine Java-Themen 2
W Lebendige Variablen herauslesen Allgemeine Java-Themen 1
K Summierung einer Variablen Allgemeine Java-Themen 5
B Gibt es eine Funktion die den Datentyp einer Variablen ermittelt? Allgemeine Java-Themen 8
X Threads Externe Variablen in Run Methoden verändern Allgemeine Java-Themen 4
Messoras Klassen Sämtliche Variablen einer Klasse übernehmen Allgemeine Java-Themen 6
K Static Variablen verbieten Allgemeine Java-Themen 10
I Problem beim Aufrufen, von Objektmethoden/ -variablen Allgemeine Java-Themen 6
J Text lesen und in Variablen speichern Allgemeine Java-Themen 3
A Best Practice Variablen vertauschen - Performance Allgemeine Java-Themen 1
F Variablen Variablen schachteln Allgemeine Java-Themen 6
7 6 int variablen vergleichen Allgemeine Java-Themen 34
C Threads Variablen in einem Thread Aktualisieren Allgemeine Java-Themen 17
M Variablen Variablen in Text einbinden Allgemeine Java-Themen 5
K Überschreiben von Variablen bei rekursivem Funktionsaufruf Allgemeine Java-Themen 2
R Übergreifende Variablen? Allgemeine Java-Themen 10
OnDemand Input/Output Variablen in Datei Speichern um sie wieder auszulesen Allgemeine Java-Themen 4
D Variablen zur Laufzeit global speichern (Registry Pattern?) Allgemeine Java-Themen 6
iB0T "goto" Befehl aus Batch in Java und Variablen wert immer wieder neu setzen Allgemeine Java-Themen 4
D ClassLoader für Variablen einer Klasse setzen Allgemeine Java-Themen 24
B Methoden Alle Methoden und Variablen aus Java-Dateien auslesen. Allgemeine Java-Themen 7
D Alle Variablen final setzen ? Allgemeine Java-Themen 26
C Kapselung Warum graift man auf Variablen nur über Methoden und nich direkt zu? Allgemeine Java-Themen 10
K Variablen speichern Allgemeine Java-Themen 2
S Variablen bei Aufruf zurücksetzen Allgemeine Java-Themen 4
V Gibt es einen Variablen Cast? Allgemeine Java-Themen 8
K Mehrere JVMs die auf eine Klasse mit statischen Variablen zugreift Allgemeine Java-Themen 19
M Generische Methoden mit Java und globale Variablen Allgemeine Java-Themen 9
E Variablen anderer Klassen auslesen (nur Name bekannt) Allgemeine Java-Themen 4
P Variablen in einer anderen Klasse auf Änderungen überwachen Allgemeine Java-Themen 12
V Typargument einer Variablen erfragen Allgemeine Java-Themen 4
B Rechnen mit mehreren Variablen Allgemeine Java-Themen 2
G Thread variablen Sichtbarkeit Allgemeine Java-Themen 15
J Java Pfad nicht mehr in Path Variablen??? Allgemeine Java-Themen 2
T Mit JNI finale Variablen überschreiben Allgemeine Java-Themen 14
T JNI -> auf Java-Variablen etc zugreifen Allgemeine Java-Themen 6
M Bezeichnung für Component-Variablen Allgemeine Java-Themen 6
M Variablen an Java-Programm übergeben Allgemeine Java-Themen 3
Airwolf89 dynamischer Zugriff auf Variablen/ Objekte Allgemeine Java-Themen 4
A Überschreibung von Variablen Allgemeine Java-Themen 3
A JavaCC: Variablen zaehlen Allgemeine Java-Themen 12
B globale und lokale Variablen Allgemeine Java-Themen 17
G referenz von variablen Allgemeine Java-Themen 9
O getRuntime().Exec() - Environment - Variablen setzen? Allgemeine Java-Themen 2
S XML-Parsing / public-Member-Variablen / Design-Frage Allgemeine Java-Themen 8
M Variablen Speicher wieder freigeben ? Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben