Interfaces - Aufbau

Status
Nicht offen für weitere Antworten.

7123

Aktives Mitglied
Hi,
ich habe eine allgemeine Frage zu den Interfaces (habe in der Suche nichts brauchbares gefunden). Und zwar:
wenn man ein eingenes Interface erstellt, besteht dieses doch aus Datenfeldern und Methodennamen mit evtl. zu übergebenden Objekten und in der Klasse die dieses Interface implementiert muss/kann man dann den Methoden bestimmte Funktionen zuweisen. Wie verhält sich das jedoch im Fall z.b. von implements MouseListener? Mir ist klar das man auch dort den Methoden bestimmte Funktionen zuweist, jedoch müsste doch im Interface schon definiert wurden sein das eine Methode z.B. durch einen Mausklick aufgerufen wird. Ich dachte bisher immer das man das nicht im Interface definieren kann, kann mir das jemand bitte erklären :?:
 
S

SlaterB

Gast
Luft holen - Satzzeichen - Absätze - klare Gedankengänge

schon mal was davon gehört? ;)

ein Interface ist nur ein Interface, fertig ist die gesamte Erklärung,
ein MouseListener-Interface definiert nur die Methode,
alles andere hat nichts mit dem Interface zu tun sondern mit den hunderten Klassen aus dem Swing-Framwork,

dort gibt es Code, der Mouse-Ereignisse verarbeitet und an die MouseListener weiterreicht,
die MouseListener tragen dazu nix bei, außer einfach nur die passende Methode zu haben, damit sie aufgerufen werden KÖNNEN,
falls irgendjemand (wie Swing) gnädigerweise das auch macht
 

7123

Aktives Mitglied
Ok, danke!!!

Das heißt also wenn ich eine Methode aufrufe sucht der Compiler, ob die Methode bzw. der Methodenname in den Swing Klassen vorhanden ist, so ähnlich wie er bei "System.out.print()" oder ähnlichem sucht, richtig?
 
S

SlaterB

Gast
Methoden werden nicht gesucht, dann bräuchte man ja keine Interface,
es wird vom Compiler geprüft, ob eine Klasse ein Interface implementiert

das ist jetzt aber ein leicht anderes Thema als die Frage, wer denn die MopuseEvents erzeugt..
 

7123

Aktives Mitglied
hm, der Compiler prüft ob MouseListener implementiert wird, das ist klar, wie kommt der Compiler jedoch dann z.b. in der Methode, die dafür sorgt das etwas nach einem Mausklick geschieht, darauf in der Klasse Swing danach zu suchen? Das wollte ich eigentlich wissen :D
 

musiKk

Top Contributor
Was ist die Klasse Swing?

Ein Interface ist einfach nur eine Schnittstelle. Ok, das ist nur die deutsche Uebersetzung, aber ich wuesste nicht, wie das noch weiter vereinfacht werden sollte. Du meldest mit addMouseListener eine eigene Klasse an, die das Interface MouseListener implementiert. Wenn der Nutzer nun klickt oder irgendwas anderes macht, was einen MouseListener interessiert, dann wird die entsprechende Methode in deiner konkreten Implementierungn des Interfaces aufgerufen. Der Aufrufer (bin mir jetzt nicht so ganz sicher, wer das ist... laut Code hats wohl was mit dem AWTEventMulticaster zu tun, aber letzten endes ist das egal) ruft dann die entsprechende Methode mouseClicked(), mouseChanged() oder was halt passt auf. Wenn eine dieser Methoden fehlt, dann klappt das natuerlich nicht, darum wird an dieser Stelle ein Interface verwendet, weil man dann gezwungen ist, die Methode zu implementieren. Ob sie leer ist oder nicht, spielt dabei natuerlich keine Rolle.
 

7123

Aktives Mitglied
also dienen die Interfaces sozusagen als "Schnittstelle" zwischen den Modulen der Klasse Swing und dem Nutzer, der somi weiß was er implementieren muss damit die Methoden funktionieren, in diesem Sinne wären die Interfaces doch eigentlich nicht erforderlich wenn man alle Methoden kennt die man implementieren muss, aber die Implementation wird trotzdem vorausgesetzt für die Funktion der einzelnen Methoden - könnte man das so zusammenfassen?
 

diggaa1984

Top Contributor
Interfaces dienen auch dazu eine breite Masse an Klassen zu erreichen, also bspw. kannst du einem Container mit der add-Methode Componenten übergeben und diese dem Container hinzufügen. Ob die Componente nun JLabel, JPanel oder derart ist, ist in dem Moment unwichtig, Hauptsache es ist vom Typ Component abgeleitet.
 

xysawq

Bekanntes Mitglied
"in diesem Sinne wären die Interfaces doch eigentlich nicht erforderlich wenn man alle Methoden kennt die man implementieren muss, aber die Implementation wird trotzdem vorausgesetzt für die Funktion der einzelnen Methoden"

...huiuiui... das ist ja mal ganz falsch...


Hast du schonmal ein Interface benutzt?

Wenn deine Klasse ein Interface implementiert gibt es irgendwo etwas, was Informationen an das Interface weiterreicht. Wenn du deine Maustaste klickst dann ruft Swing im MouseEvents die Methode MouseClicked() auf.
Deine Klasse hat MouseEvent implementiert und somit wird der Aufruf der Methode MouseClicked() an deine Klasse weitergereicht, die dann Code dazu beisteuert.

Willst du sowas selber machen musst du sozusagen auch die Seite von Swing selbst programmieren, da MouseEvent nur eine Interface (Schnittstelle) ist und keine Funktionalität anbietet.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Interfaces von Interfaces macht das noch Sinn? Java Basics - Anfänger-Themen 21
J Methodenaufrufe abstrakte Klassen, Interfaces Java Basics - Anfänger-Themen 17
M Wozu dient Interfaces? Java Basics - Anfänger-Themen 6
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
U Funktionale Interfaces mit mehreren abstrakten Methoden? Java Basics - Anfänger-Themen 8
M Interfaces Aufgabe Java Basics - Anfänger-Themen 2
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
I XML und Interfaces aus anderen Projekten Java Basics - Anfänger-Themen 3
8u3631984 Record - Interfaces Java Basics - Anfänger-Themen 4
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
H Sinn von Interfaces Java Basics - Anfänger-Themen 21
B JaxB und Interfaces? Java Basics - Anfänger-Themen 2
M Funktionale Interfaces Java Basics - Anfänger-Themen 3
Kirby.exe Frage zur Verwendung von Interfaces Java Basics - Anfänger-Themen 6
H Frage zu interfaces Java Basics - Anfänger-Themen 1
J Zweck von Interfaces immer noch nicht klar Java Basics - Anfänger-Themen 3
M Klasse erbt von Interfaces Java Basics - Anfänger-Themen 6
T Interfaces in erbenden Klassen Java Basics - Anfänger-Themen 2
T Abstrakte Klasse und Interfaces Java Basics - Anfänger-Themen 12
H Polymorphie Interfaces und statischer Typ Java Basics - Anfänger-Themen 33
T Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 7
F Exceptions in Interfaces Java Basics - Anfänger-Themen 4
F Interface Warum Interfaces? Java Basics - Anfänger-Themen 5
R interfaces Java Basics - Anfänger-Themen 1
B Interfaces Java Basics - Anfänger-Themen 6
A Vererbung/Interfaces/Generics Java Basics - Anfänger-Themen 12
D Interface Wieso Aufruf aller Methoden eines Interfaces? Java Basics - Anfänger-Themen 11
J Interfaces? Java Basics - Anfänger-Themen 32
M Erstellung Interfaces....totale Anfängerfrage Java Basics - Anfänger-Themen 16
S Erste Schritte Innere Klassen und Interfaces Java Basics - Anfänger-Themen 2
J Wofür dienen Interfaces ? Java Basics - Anfänger-Themen 1
Hijo2006 Frage zu Interfaces Java Basics - Anfänger-Themen 21
Hacer Interfaces implementieren Java Basics - Anfänger-Themen 7
H Implementierung eines Interfaces erweitern Java Basics - Anfänger-Themen 13
L Via Interfaces unterschiedliche Klassen ansprechen Java Basics - Anfänger-Themen 8
A Verwendung von Interfaces Java Basics - Anfänger-Themen 7
J Interfaces Java Basics - Anfänger-Themen 15
D Frage bzgl. Interfaces Java Basics - Anfänger-Themen 10
D Interface Verständnisprobleme von Interfaces Java Basics - Anfänger-Themen 5
D Interface Interfaces und abstrakte Klassen implementieren Java Basics - Anfänger-Themen 4
S Rollen verändern, Interfaces austauschen wie? Java Basics - Anfänger-Themen 10
K Interfaces/Klassen etc. Java Basics - Anfänger-Themen 6
F Implementierung von Interfaces -> Problem mit main Java Basics - Anfänger-Themen 12
S Verständnisproblem bei Interfaces Java Basics - Anfänger-Themen 6
I Interface Verständnisfrage Interfaces (Bsp.: Enumeration) Java Basics - Anfänger-Themen 2
M Frage zu Generics in Klassen, Abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
O Java Interfaces für andere Programmiersprachen zur Verfuegung stellen? Java Basics - Anfänger-Themen 2
K Interface Generics, Interfaces und Listen - ich bin verwirrt. Java Basics - Anfänger-Themen 7
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
M Compiler-Fehler Alle Methoden eines Interfaces Implementiert dennoch Fehler Java Basics - Anfänger-Themen 3
V Interface Interfaces und abstrakte Klassen Java Basics - Anfänger-Themen 3
F Best Practice UML/Planung eines Projektes (Klassen, Interfaces, ...) Java Basics - Anfänger-Themen 0
V Vererbung Vererbung, Interfaces und OOP... Java Basics - Anfänger-Themen 10
C Sinn eines Interfaces? Java Basics - Anfänger-Themen 4
A Interface Poymorphismus bei Interfaces Java Basics - Anfänger-Themen 2
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
R Mehrere Interfaces(Comparable, ...) Java Basics - Anfänger-Themen 2
J Interfaces Abstrakte Klassen Java Basics - Anfänger-Themen 15
D Interfaces und allgemeingültige Methodenaufrufe Java Basics - Anfänger-Themen 6
H Erste Schritte 2 User Interfaces für eine Anwendung Java Basics - Anfänger-Themen 7
S OOP Wann Proxies und Interfaces? Java Basics - Anfänger-Themen 3
M Interface @Inject mit Interfaces? Java Basics - Anfänger-Themen 2
F Interface Unterschied von Attributen und Methoden bei abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
V mehrfachvererbung unter interfaces Java Basics - Anfänger-Themen 10
J Interface Wie funktioniert das mit den Interfaces. Ich verstehe es einfach nicht! :( Java Basics - Anfänger-Themen 15
T Interfaces und Implementierungen Java Basics - Anfänger-Themen 12
S Interface mehrere Interfaces Java Basics - Anfänger-Themen 2
M Vererbung Problem bei Interfaces Java Basics - Anfänger-Themen 8
H Dynamische Bindung mit Interfaces und LinkedList Java Basics - Anfänger-Themen 7
F Interfaces Java Basics - Anfänger-Themen 4
M Frage zu Interfaces Java Basics - Anfänger-Themen 3
N Generics und Interfaces Java Basics - Anfänger-Themen 5
D Abstrakte Klassen und Interfaces als Paramter in Funktionen Java Basics - Anfänger-Themen 3
P OOP Aufruf eines Interfaces Java Basics - Anfänger-Themen 4
N OOP Vererbung von Interfaces Java Basics - Anfänger-Themen 12
S Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 2
D Sinn von Interfaces - Wozu? Java Basics - Anfänger-Themen 9
P Frage zu Interfaces Bsp. Java Basics - Anfänger-Themen 9
A Deklarationen in abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 11
R Adapterklassen vs Interfaces Java Basics - Anfänger-Themen 6
P Interfaces -> eins oder mehrere für eine Anwendung? Java Basics - Anfänger-Themen 9
2 Interfaces, Polymorphie und Methoden. Java Basics - Anfänger-Themen 14
A Obstlager Interfaces Java Basics - Anfänger-Themen 7
K Theor. Frage zu Interfaces Java Basics - Anfänger-Themen 30
T Frage zu Interfaces und Abstrakten Klassen Java Basics - Anfänger-Themen 4
J Interfaces Java Basics - Anfänger-Themen 14
L Interfaces Java Basics - Anfänger-Themen 5
J spiel "Gefangenendilemma" Probleme mit Interfaces Java Basics - Anfänger-Themen 8
H Interfaces in java? Java Basics - Anfänger-Themen 2
A OOP Interfaces mit gleichem Methoden Java Basics - Anfänger-Themen 15
T Interfaces: Braucht man abstrakte Klassen eigentlich noch? Java Basics - Anfänger-Themen 3
S Implementierung gegen Interfaces / List, ArrayList, LinkedList Java Basics - Anfänger-Themen 11
D Interfaces / Schnittstellen Java Basics - Anfänger-Themen 8
I Probleme mit Interfaces Java Basics - Anfänger-Themen 4
K Interfaces "Schreibaufwand" Java Basics - Anfänger-Themen 53
I Interfaces Java Basics - Anfänger-Themen 34
bigbasti Warum genau braucht man Interfaces? Java Basics - Anfänger-Themen 10
A Programmieren gegen Interfaces Java Basics - Anfänger-Themen 4
I Frage zu Collection und List Interfaces Java Basics - Anfänger-Themen 2
G Interfaces mit gleichen Methoden Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben