Reihenfolge von Events

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
hallo zusammen,

habe eine frage:

ich heiße mario und bereite mich gerade auf den SCJP vor .. dazu mache ich einen audio lehrgang von sun. jeweils am ende findet eine lernzielerreichungskontrolle statt. dabei habe ich ein verständnisproblem.

im lehrgang wurde gesagt, dass events in der gleichen reihenfolge aufgerufen werden, wie sie an einer komponente registriert werden.

im abschliessenden test kam die folgende frage:

Which of the following statements are true regarding the AWT event model? (Check all that apply.)

A. Events are objects encapsulating a user interaction with the GUI.
B. An event source is a Component or a MenuComponent that generates an event.
C. An event handler is a method that receives an event object, deciphers it, and processes the user interaction.
D. The Java Programming Language Specification guarantees that the order in which event listeners are registered with an event source is the order in which the event handlers will be called back.


The correct answers are: A, B, C

ich habe aufgrund des gehörten dann auch D angekreuzt, was leider falsch war. darüber hinaus habe ich es ausprobiert:

Code:
myButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {
				System.out.println("Button wurde gedrückt");

			}
		});
		
		myButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {
				System.out.println("Button wurde das zweite mal gedrückt");

			}
		});

das erzeugt die ausgabe:

Button wurde gedrückt
Button wurde das zweite mal gedrückt


..wenn ich das nun rumdrehe:
Code:
myButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {
				System.out.println("Button wurde das zweite mal gedrückt");

			}
		});
		
		myButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {
				System.out.println("Button wurde gedrückt");

			}
		});

kommt die ausgabe:

Button wurde das zweite mal gedrückt
Button wurde gedrückt

.. das würde doch dafür sprechen, dass es wirklich in der reihenfolge der registrierung aufgerufen wird. warum ist dann die antwort D im test falsch ? oder stört der wortlaut 'guarantees', weil es vielleicht ne ausnahme gibt ?1


stehe gerade ein wenig auf dem schlauch, hoffe die frage ist nicht zuu blööde ?!?!


schönen gruß
mario
 

skuuta

Mitglied
hallo nochmal,

leider wurde der thread als "gast" verfasst.. muss irgendwas schief gelaufen sein (eventuell auch zwischen meinen ohren)

:?
 
S

SlaterB

Gast
ich glaube, man findet nicht mal ein Beispiel für eine Ausnahme,
es ist einfach nur ein Fakt, dass dies nicht definiert ist,

da gehts weniger um eine konkrete Implementierung als um die fundamentale Logik dahinter,

bei Collections.sort(list) kann man davon ausgehen, dass die Liste selber ein relevantes Thema ist
und deren Reihenfolge stark mit den Aufgaben der Methode zu tun hat,

aber Listener sollen voneinander unabhängig sein, austauschbar,
beliebig neu dazukommen oder entfernt werden oder mal Pause machen,

dass es allein schon einfacher ist, doch die Reihenfolge beizubehalten statt aktiv zu mischen,
ändert an diesem Konzept nichts

--------

vergleiche das mit:
bei zwei Durchläufen eines beliebigen Sets per Iterator ohne irgendeine Änderung ist keine gleiche Reihenfolge garantiert,
genausowenig bei zwei gleichartigen DB-Anfragen hintereinander

selbst wenn es schwieriger zu implementieren wäre, die Reihenfolge der Ausgabe zu variieren,
sollte man prinzipiell nicht auf solche Gegebenheiten irgendwas aufbauen


----

nicht zuletzt ist das aber auch eine Aussage, die AWT gar nicht garantieren kann,
da das von jeder einzelnen Implementation, vielleicht gar von Benutzer-eigenen Klassen abhängt,

alle anderen Aussagen sind quasi narrensicher:
wenn eine Klasse keine Benutzeraktion beschreibt, dann ist sie per Definition kein Event und andersrum,
das kann man gar nicht falsch implementieren
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H JavaFX Timeline KeyFrame Reihenfolge AWT, Swing, JavaFX & SWT 6
T Reihenfolge der Komponenten im einem JFrame AWT, Swing, JavaFX & SWT 8
K Swing Reihenfolge bei ActionListenern AWT, Swing, JavaFX & SWT 1
J Reihenfolge der Punkte in Vielecken AWT, Swing, JavaFX & SWT 3
C Swing Reihenfolge der Initialisierung von Komponenten AWT, Swing, JavaFX & SWT 6
GUI-Programmer JFilechooser, mehrere Datein selektieren und Reihenfolge (2) AWT, Swing, JavaFX & SWT 8
T Java-Anwendung arbeitet Programm in seltsamer Reihenfolge ab AWT, Swing, JavaFX & SWT 3
M Komponenten in anderer Reihenfolge anzeigen AWT, Swing, JavaFX & SWT 4
lumo LayoutManager SWT GridLayout - Reihenfolge ändern AWT, Swing, JavaFX & SWT 7
P Swing Hierachie oder Reihenfolge von Komponenten AWT, Swing, JavaFX & SWT 5
C Swing Text eines JButton mit String definieren? Reihenfolge? AWT, Swing, JavaFX & SWT 6
D Swing JOptionPane + FileChooser .. Reihenfolge wichtig!? AWT, Swing, JavaFX & SWT 7
A Reihenfolge von ActionListener und InputVerifier AWT, Swing, JavaFX & SWT 4
P JList: Reihenfolge der Elemente per Drag'n'Drop ändern. AWT, Swing, JavaFX & SWT 9
T Tab Reihenfolge bei JTextFeldern ändern AWT, Swing, JavaFX & SWT 4
H Reihenfolge z.B. KeyPressed in Child/Parent AWT, Swing, JavaFX & SWT 11
S Labels und Button übereinander --> Reihenfolge? AWT, Swing, JavaFX & SWT 4
M Tab-Reihenfolge aber mit SWT AWT, Swing, JavaFX & SWT 1
K Tab-Reihenfolge AWT, Swing, JavaFX & SWT 7
T "globaler" keylistener/tab-reihenfolge/insertcurso AWT, Swing, JavaFX & SWT 5
B JTree - Reihenfolge der Nodes verändern AWT, Swing, JavaFX & SWT 3
N Fokus Reihenfolge ändern AWT, Swing, JavaFX & SWT 12
bernd Reihenfolge beim springen mit Tab-Taste ändern! AWT, Swing, JavaFX & SWT 4
G mouse events AWT, Swing, JavaFX & SWT 6
Heldderschatten Java Events und Interfaces AWT, Swing, JavaFX & SWT 18
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
D Swing Events vom JLayer abfangen AWT, Swing, JavaFX & SWT 2
D Transparentes Hauptfenster Events AWT, Swing, JavaFX & SWT 1
M Swing Hinter die Kulissen von Events (addActionListener) AWT, Swing, JavaFX & SWT 6
N JTextArea Events weiterleiten AWT, Swing, JavaFX & SWT 3
R SWT Eigene Events erstellen und werfen AWT, Swing, JavaFX & SWT 59
S Mouse Events in einer sortierten JTable unterscheiden AWT, Swing, JavaFX & SWT 18
C Swing Simulation von Drag and Drop Events AWT, Swing, JavaFX & SWT 3
J Events und Sleep? AWT, Swing, JavaFX & SWT 4
C MouseMotionListener fired keine Events mehr wenn in Button AWT, Swing, JavaFX & SWT 2
E JFace ListSelectionDialog & Mouse-Events? AWT, Swing, JavaFX & SWT 2
N Variablen in Events AWT, Swing, JavaFX & SWT 4
P AWT MouseListener unklare abhandlung von Events AWT, Swing, JavaFX & SWT 3
L Swing Auslöser eines Events finden? AWT, Swing, JavaFX & SWT 6
R JTable - eigener Editor - Mouse events AWT, Swing, JavaFX & SWT 2
C keine weiteren Events während Drag&Drop Operation möglich? AWT, Swing, JavaFX & SWT 5
Weltall 7 AWT Maus-Events werden doppelt ausgeführt AWT, Swing, JavaFX & SWT 12
0 Events werden nicht ausgelöst AWT, Swing, JavaFX & SWT 2
V Swing Auslösen von zwei Events hintereinander AWT, Swing, JavaFX & SWT 4
T Swing Control und Events AWT, Swing, JavaFX & SWT 8
MrMilti Gezeichnete Java2D Elemente mit Events versehen AWT, Swing, JavaFX & SWT 3
R Events - Nur auf eines reagieren AWT, Swing, JavaFX & SWT 3
T JComboBox: ActionListener/ItemListener wie nur auf bestimmte Events reagieren? AWT, Swing, JavaFX & SWT 7
B Swing setDefaultButton geht nicht - Komponente fängt Events ab AWT, Swing, JavaFX & SWT 5
R Key und Mouse Events AWT, Swing, JavaFX & SWT 2
K Alle Events abfangen mit GlassPane AWT, Swing, JavaFX & SWT 7
T SWT - Table Events AWT, Swing, JavaFX & SWT 3
hdi Events nicht plattform-unabhängig? AWT, Swing, JavaFX & SWT 14
M SWT: eigene Events AWT, Swing, JavaFX & SWT 9
D Events bei Tabs in einem Editor AWT, Swing, JavaFX & SWT 2
F Probleme mit MouseWheel events in SWT AWT, Swing, JavaFX & SWT 13
M Globale Events in Windows abfangen AWT, Swing, JavaFX & SWT 2
T Hilfe zu Events? AWT, Swing, JavaFX & SWT 6
S Events abfangen, nicht durchlassen AWT, Swing, JavaFX & SWT 2
T Events unterdrücken AWT, Swing, JavaFX & SWT 8
G An die Quelle einen events kommen AWT, Swing, JavaFX & SWT 2
M Problem mit verschachtelten Events und kein ausweg in sicht AWT, Swing, JavaFX & SWT 3
W Vom JPanel bekomme ich keine Events AWT, Swing, JavaFX & SWT 5
V Events an untere Layers weitergeben AWT, Swing, JavaFX & SWT 2
V events skippen AWT, Swing, JavaFX & SWT 14
M Events auslagern? AWT, Swing, JavaFX & SWT 6
F Events AWT, Swing, JavaFX & SWT 8
N SWT: GUI Windows Events AWT, Swing, JavaFX & SWT 8
I Globale Tastatur-Events abfragen AWT, Swing, JavaFX & SWT 3
D Events werden zu oft aufgerufen AWT, Swing, JavaFX & SWT 4
G Events AWT, Swing, JavaFX & SWT 2
K Mouse Events der Scrollbar/pane AWT, Swing, JavaFX & SWT 2
S Events fremdauslösen AWT, Swing, JavaFX & SWT 17
K Doppelte Events AWT, Swing, JavaFX & SWT 4
A Combobox Focus-Events, Tab in Tabelle AWT, Swing, JavaFX & SWT 7
D Events, Listener, GUI . Größeres Projekt AWT, Swing, JavaFX & SWT 4
A Vielschichtige GUI und Events? AWT, Swing, JavaFX & SWT 4
V JList mit Events Steuern ? AWT, Swing, JavaFX & SWT 15
S Rechner zu schnell für Events? AWT, Swing, JavaFX & SWT 14
G JTable und Events AWT, Swing, JavaFX & SWT 4
S Events bei 2 gleichen Jtree abfangen AWT, Swing, JavaFX & SWT 3
ShapeShifter JButton erzeugt zwei Events AWT, Swing, JavaFX & SWT 4
B Eigenes Events AWT, Swing, JavaFX & SWT 3
T JScrollPane-Events AWT, Swing, JavaFX & SWT 2
M JTable und Events AWT, Swing, JavaFX & SWT 4
K JComboBox: Endlosschleife durch Events AWT, Swing, JavaFX & SWT 4
K [JComboBox] ENTER löst zwei events aus? AWT, Swing, JavaFX & SWT 2
M Glasspane und dispatchen von Events AWT, Swing, JavaFX & SWT 6
H Events manuell aufrufen AWT, Swing, JavaFX & SWT 4
F JComboBox setEditable( true ) auf Tastatur Events reagieren AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben