Best Practice Verständnisfrage Listener bei lokalen Objekten

kaoZ

Top Contributor
Aloha , ich hätte da eine kleine Frage, wie realisiere ich bei folgender Situation am geschicktesten das EventHandling für Komponenten welche in den statischen hilfsmethoden deklariert werden ?!

Übergabe eines ActionListeners als Parameter ?!

Factory :

Java:
public class CardFactory {
	
	public CardFactory(){}
	
	public static JPanel createWelcomeCard(){
		JPanel panel = new JPanel();
		//TODO
		return panel;
	}
	
	public static JPanel createUserCard(){
		JPanel panel = new JPanel();
		//TODO
		return panel;
	}
	
	public static JPanel createRootCard(){
		JPanel panel = new JPanel();
		//TODO
		return panel;
	}
	
	public static JPanel createCompanyCard(){
		JPanel panel = new JPanel();
		//TODO
		return panel;
	}

	public static JPanel createDisclaimerCard(){
		JPanel panel = new JPanel();
		//TODO
		return panel;
	}
}

Verwendung der Factory :

Java:
public class Installer{
	
	private JFrame frame;
	
	private JPanel contentPane;
	private JPanel btnPane;
	private JPanel[] cards;
	
	private InstallerModel model;

	final Dimension btnSize		 = new Dimension(125,25);
	final Dimension frameSize	 = new Dimension(600,450);
	
	public Installer() {
		this.model = new InstallerModel();
		initComponents();
		addComponents();
	}
	
	private void initComponents(){
		frame = new JFrame(INSTALLER_TITLE);
		frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		frame.setSize(frameSize);
		frame.setLocationRelativeTo(null);
		
		contentPane = new JPanel(new CardLayout());
		contentPane.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
		
		btnPane = createBtnPane();
		
		cards = new JPanel[5];
		
		cards[0] = CardFactory.createWelcomeCard();
		cards[1] = CardFactory.createUserCard();
		cards[2] = CardFactory.createRootCard();
		cards[3] = CardFactory.createCompanyCard();
		cards[4] = CardFactory.createDisclaimerCard();
	}
	
	private void addComponents(){
		addCards(cards);
		getFrame().add(BorderLayout.CENTER, contentPane);
		getFrame().add(BorderLayout.PAGE_END, btnPane);
	}
	
	private JPanel createBtnPane(){
		JPanel panel = new JPanel();
		
		return panel;
	}
	
	private void addCards(JPanel...cards){
		for (JPanel card : cards) {
			contentPane.add(card);
		}
	}
	
	public void setVisible(){
		frame.setVisible(true);
	}

	public JFrame getFrame() 						{return this.frame;}
	public InstallerModel getModel() 				{return this.model;}	
}

und wenn ja , Schreibe ich dann am besten eine Innere Klasse die sich um die Eventbehandlung kümmert ? eine Eigene Klasse ? oder implementiere ich einfach einen ActionListener im Installer ?

Oder sollte ich vielleicht die erzeugung der einzelnen "cards" ( JPanel ) in separate Klassen auslagern, welche dann dort Referenzen auf ihren Inhalt halten ?

also Sprich :

Java:
public class UserCard{

  JPanel panel;


//...usw

}

und diese dann einfach im Installer instanzieren ? bzw. sollte ich dann nicht den Schritt gehen und UserCard von JPanel ableiten ? ( an sich ist es ja ein Container der daten enthält )

Java:
public class UserCard extends JPanel{

//...usw

}

und dann beim eigentlichen Aufruf

Java:
cards[0] = new UserCard();

so könnte ich mir dann auch die Factory sparen um das "komplizierte" Objekt zu konstruieren , und habe kein Problem an die enthaltenen Komponenten zu gelangen , bzw. muss ich nicht den weg über

Code:
userCard.getComponents();
gehen...

[EDIT]
Die einzelnen Karten enthalten später Content wie z.B JTextFields oder auch einen JFileChooser, da ich ja an inhalte, bzw. Texteingaben kommen muss stellt sich mir die Frage ob das mit Statischen hilfsmethoden nicht vielleicht eine eher schlechte idee wäre .
[/EDIT]

ich dachte da Quasi an sowas in der Art :

Java:
public class UserCard extends JPanel {
	private static final long serialVersionUID = 1L;
	
	JTextField[] fields;
	JLabel[] labels;
	
	String[] input = {"Vorname / Nachname :","Strasse / Nr. :","Plz. / Ort :","Tel. / Fax : ", "Email :"};
	
	GridBagConstraints g = new GridBagConstraints();

	public UserCard() {
		initComponents();
		addComponents();
	}
	
	private void initComponents(){
		getCard().setLayout(new GridBagLayout());
		
		fields = new JTextField[9];
		labels = new JLabel[5];
		
		for (int i = 0; i < labels.length; i++) {
			labels[i] = new JLabel(input[i]);
		}
		
		for (int i = 0; i < fields.length; i++) {
			fields[i] = new JTextField();
			fields[i].setColumns(10);
		}
		
	}
	
	private void addComponents(){
		
		g.gridx = 0;
		g.gridy = 0;
		getCard().add(labels[0], g);
		
		g.gridx = 0;
		g.gridy = 1;
		getCard().add(fields[0], g); 
		
		//...usw usw...
	}
	
	public JTextField getTextField(int i){
		return fields[i];
	}
	
	public JPanel getCard() 			{return this;}
}

und dann um an den input der TextFelder zu gelangen

Java:
userCard.getTextField(2).getText();

:toll:
 
Zuletzt bearbeitet:

Joose

Top Contributor
Java:
public class UserCard{

  JPanel panel;


//...usw

}
Ich würde hierzu tendieren!

Java:
cards[0] = new UserCard();
Ob du dann direkt instanziert oder über eine Factory, kommt dann halt darauf an. Wobei für den Anfang würde eine direkte Instanzierung reichen.

Java:
public class UserCard extends JPanel{
}

Hier gilt das selbe wie beim JFrame ..... wenn eine Klasse nicht um Funktionalität erweitert wird braucht man nicht von dieser ableiten! Nur (bestimmte) Daten in einem bestimmten Layout anzeigen ist keine Funktionalitäts erweiterung ;)
 

kaoZ

Top Contributor
Hier gilt das selbe wie beim JFrame ..... wenn eine Klasse nicht um Funktionalität erweitert wird braucht man nicht von dieser ableiten! Nur (bestimmte) Daten in einem bestimmten Layout anzeigen ist keine Funktionalitäts erweiterung ;)

Richtig ;)

Allerdings macht es das ganze irgendwie auch wieder ungeheuer kompliziert wenn ich es nicht ableite,

denn so könnte ich die UserCard nicht als JPanel und demnach auch nicht als JComponent behandeln

was wiederrum zur folge hätte das ich die nicht einfach Instanzieren kann sondern müsste wieder Methoden bereitstellen die mir dann den Panel, bzw. den inhalt des Panels liefern :D

sprich -> mehr code ( wenn auch nicht viel)

ohne Ableitung :

Java:
cards[0] = new UserCard().getCard();

mit Ableitung

Java:
cards[0] = new UserCard();

:toll:

Ich könnte jetzt noch mit , der Source Code sieht dann s******e aus argumentieren , aber ich glaube das greift fachlich nicht wirklich :lol:

ausserdem sträubem sich mir die Nackenhaare wenn ich dann sowas machen muss, da ich mir gerade angewöhne vorwiegend getter einzusetzen :D

Java:
private void initComponents(){
		this.content = new JPanel(); // <<---- im vergleich zu getContent(); darunter 
		
		getContent().setLayout(new GridBagLayout());
 
Zuletzt bearbeitet:

Joose

Top Contributor
Vergiss meinen Blödsinn ... natürlich kann man in diesem Fall von JPanel ableiten.
Anders macht es ja keinen Sinn bzw. erzeugt es auch keinen schönen Code.
 

kaoZ

Top Contributor
Ist halt irgendwie immer ein Zwiespalt

einerseits ist JPanel ein Container welcher Daten beinhaltet, andererseits

ist UserCard in diesem Fall auch ein Container welcher Daten beinhaltet, aber um wirkliche Funktionalität erweitere ich JPanel damit nicht,

trotzdem könnte man sagen UserCard is-a Container, und somit auch UserCards is-a JComponent, und auch UserCard is-a JPanel, ich bin mir selbst immer unschlüssig ob ich nun ableiten soll oder nicht , weil wirkliche funktionalität füge ich ja damit nicht hinzu.....

bzw. ist dann wieder die Frage, was genau man unter Funktionalität versteht ^^
 
Zuletzt bearbeitet:

kaoZ

Top Contributor
Allerdings muss ich nun auch wieder wenn ich z.B solch eine Methode anbiete :

Java:
public String getText(int index){
	return fields[index].getText();
}

einen DownCast von JPanel auf UserCard ausführen um an die Methode zu gelangen,

Java:
String s = ((UserCard) cards[0]).getText(1);

es sei denn ich referenziere anstelle eines JPanel arrays ein UserCard Array

bzw. ein Array einer Abstrakten Basisklasse welche JPanel erweitert und dann diese Methode anbietet

zumal es auch unübersichtlicher wird da ich um den gewünschten Effekt zu erhalten Verschachteln muss

Java:
public class UserCard extends JPanel{
	private static final long serialVersionUID = 1L;
	
	private JTextField[] fields;
	private JLabel[] labels;
	
	JPanel content;
	
	GridBagConstraints cons = new GridBagConstraints();

	public UserCard() {
		initComponents();
		addComponents();
	}
	
	private void initComponents(){
		getCard().setLayout(new GridBagLayout());
		
	
		cons.anchor = GridBagConstraints.FIRST_LINE_START;
		cons.weightx = 1;
		cons.weighty = 1;
		
		content = new JPanel(new GridBagLayout());

		String[] input = {"Vorname / Nachname :","Strasse / Nr. :","Plz. / Ort :","Tel. / Fax : ", "Email :"};
		
		fields = new JTextField[9];
		labels = new JLabel[5];
		
		for (int i = 0; i < labels.length; i++) {
			labels[i] = new JLabel(input[i]);
		}
		
		for (int i = 0; i < fields.length; i++) {
			fields[i] = new JTextField();
			fields[i].setColumns(10);
		}
	}
	
	private void addComponents(){
		
		GridBagConstraints g = new GridBagConstraints();
		
		//Name
		g.anchor = GridBagConstraints.LINE_START;
		g.weightx = 0;
		
		g.gridx = 0;
		g.gridy = 0;
		getContent().add(labels[0], g);
		
		g.gridx = 0;
		g.gridy = 1;
		getContent().add(fields[0], g); 
		
		g.gridx = 1;
		g.gridy = 1;
		getContent().add(fields[1], g); 
		
		//Street
		
		g.gridx = 0;
		g.gridy = 2;
		getContent().add(labels[1], g);
		
		g.gridx = 0;
		g.gridy = 3;
		getContent().add(fields[2], g); 
		
		g.gridx = 1;
		g.gridy = 3;
		fields[3].setColumns(3);
		getContent().add(fields[3], g); 
		
		getCard().add(getContent(), cons);
	}
	
	public String getText(int index){
		return fields[index].getText();
	}
	
	public JPanel getCard() 			{return this;}
	public JPanel getContent() 			{return this.content;}
}

ergibt :



während die unverschachtelte Variante dieses hier ergibt :



so sähe die erste "Karte" dann mehr oder weniger fertig aus :

 
Zuletzt bearbeitet:

kaoZ

Top Contributor
Falls Interesse bestehen sollte , ich habe den Listener für die Buttons folgendermaßen in einer Separaten Klasse umgesetzt:

Java:
public class CardListener implements ActionListener {

	private JPanel container;
	private int index;
	
	public CardListener(JPanel container) {
		this.container = container;
		this.index = 0;
	}
	
	@Override
	public void actionPerformed(ActionEvent e) {
		
		CardLayout layout = (CardLayout) getContainer().getLayout();
		
		switch (e.getActionCommand()) {
		case "Weiter":
			if (getIndex() < container.getComponentCount() - 1) {
				incrementIndex();
				layout.next(getContainer());
			}
			break;
		case "Zurück":
			if (getIndex() != 0) {
				decrementIndex();
				layout.previous(getContainer());
			}
			break;
		}
		
	}
	
	public void incrementIndex(){
		this.index++;
	}
	
	public void decrementIndex(){
		this.index--;
	}
	
	public JPanel getContainer() 			{return this.container;}
	public int getIndex() 					{return this.index;}
}

und das hinzufügen zu den Buttons:

Java:
	private JPanel createBtnPane(){
		JPanel panel = new JPanel();
		panel.setLayout(new BoxLayout(panel, BoxLayout.LINE_AXIS));
		panel.setBorder(BorderFactory.createEmptyBorder(0, 0, 20, 0));
		
		final String[] btnTxt = {"Zurück","Weiter"};
		final Dimension btnDim = new Dimension(125,25);
		final Dimension btnGap = new Dimension(20,0);
		
		btns = new JButton[2];
		
		for (int i = 0; i < btns.length; i++) {
			btns[i] = new JButton(btnTxt[i]);
			btns[i].setPreferredSize(btnDim);
		}
		
		panel.add(Box.createHorizontalGlue());
		panel.add(btns[0]);
		panel.add(Box.createRigidArea(btnGap));
		panel.add(btns[1]);
		panel.add(Box.createRigidArea(new Dimension(30,0)));
		
		addListener(new CardListener(getContent()), btns);
		
		return panel;
	}

	public void addListener(ActionListener l, JButton...btns){
		for (JButton btn : btns) {
			btn.addActionListener(l);
		}
	}
 

Harry Kane

Top Contributor
Puh. Ich bin wieder einigermassen verwirrt.
Im Eingangspost fragst du nach EventHandling, und in den Codeschnipseln taucht gar keine Komponente auf, auf die man einen ActionListener registrieren könnte.
Im letzten Post wird dann klar: es ging nur um das Eventhandling der Vor- und Zurück Buttons.
Nun gut.
Mein Beitrag zu der Frage was besser ist:
Java:
class Card{
   private JPanel;
   public Card(){
        this panel = new JPanel();
    }
    public JComponent getComponent(){
        return this.panel;
    
}
oder das
Java:
class Card extends JPanel{

}
würde ich im Zweifelsfall zu letzterem raten. Deine Einwände dass du die Cards dann nicht einfach instanziieren kannst, oder das ganze dann sehr unübersichtlich wird, ist für mich nur sehr eingeschränkt nachvollziehbar.
Der größte Vorteil von der ersten Variante ist, daß die Klasse von der Card abgeleitet ist, nicht festgelegt ist. In zweiten Beispiel ist die Möglichkeit zur Definition einer Oberklasse schon "verbraucht". Wenn du später mehrere Cardtypen hast und dann erkennst, daß du gemeinsame Funktionjalität in eine Oberklasse auslagern könntest, geht das nicht mehr.
Eine Card könnte z. B. eine Modelklasse sein, die primär nur die Daten für einen bestimmten Objekttyp vorhält, und die auf Anfrage ein JPanel erzeugt mit GUI Komponenten, mit deren Hilfe man die Eigenschaften der Objekte ändern kann. Das wäre eine Abwandlung von ControlPanel<I>, welches ich hier vorgestellt habe mit dem kleinen Unterschied, daß GUI Komponenten nur bei Bedarf erzeugt werden.
Noch ein Tip: Für Formulare würde ich sehr stark zu einem anderen Layoutmanager raten. Ich mache praktisch alles nur noch mit MigLayout.
 

kaoZ

Top Contributor
Ok, zugegeben , der Thread wurde etwas unübersichtlich, vielleicht auch weil ich mir noch unklar war was genau mein zu diesem Zeitpunkt auftretendes Problem war ^^,

Die Sache mit den Cards, habe ich bereits anders gelöst :)

ebenso wie die wie das mit den Listenern für Lokal definierte Objekte ( in diesem Fall JButtons ) ,

Abstrakte Basisklasse :

Java:
/*
 * Copyright 2014 EscaFLow Dev.
 */

package de.kaoz.installer.cards;

import java.awt.CardLayout;
import java.awt.FlowLayout;
import java.awt.LayoutManager;

import javax.swing.JPanel;

/**
 * 
 * <code>Card</code> is an abstract Definition of an inline Container.
 * It contains an <code>JPanel</code> as its content.
 * 
 * <br></br>
 * 
 * <b>Note:</b> you have to call <code>setContent</code> in an implementation to 
 * set the specified content for this Card, usually a JPanel.
 * 
 * Usally should to be used with {@link CardLayout}
 * 
 * @author kaoZ
 * @see {@link JPanel}
 * @see {@link CardLayout}
 */

public abstract class Card extends JPanel {
	private static final long serialVersionUID = 1L;
	
	private JPanel content;
	
	public Card() {}

	abstract void initComponents();
	abstract void setProperties();
	abstract void addComponents();
	
	/**
	 * Set the content to this <code>Card</code>
	 * 
	 * @param content The content to be set
	 */
	
	public void setContent(JPanel content){
		this.content = content;
	}
	
	/**
	 * Returns this <code>Card</code> with a {@link FlowLayout}
	 * as it's default {@link LayoutManager}
	 * 
	 * @return this Card.
	 */
	
	public JPanel getCard() 			{return this;}
	
	/**
	 * Return the specified content of this <code>Card</code>
	 * 
	 * @return this content.
	 * @see #setContent(JPanel)
	 */
	
	public JPanel getContent() 			{return this.content;}
}

eine Konkrete Realisierung einer Card:

Java:
public class RootCard extends Card{
	private static final long serialVersionUID = 1L;

	private JFileChooser chooser;
	
	public RootCard() {
		initComponents();
		setProperties();
		addComponents();
	}
	
	@Override
	void initComponents(){
		setContent(new JPanel());
		
		this.chooser = new JFileChooser();
	}
	
	@Override
	void setProperties(){	
		getFileChooser().setControlButtonsAreShown(false);
		getFileChooser().setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
	}
	
	@Override
	void addComponents(){
		getContent().add(getFileChooser());	
		getCard().add(getContent());
	}
	
	public JFileChooser getFileChooser()	{return this.chooser;}
}

und kann so beliebig Unterklassen davon erzeugen , das hinzufügen von Listenern zu lokal definierten Objekten , in diesem Fall JButtons löse ich nun über das übergeben an eine dafür definierte Methode , welcher ich einfach ein Listener und die JButtons Übergebe,

Java:
public void addListener(ActionListener l, JButton...btns){
		for (JButton btn : btns) {
			btn.addActionListener(l);
		}
	}

Sicher könnte ich auch diese Methode jetzt abstrakter halten , aber um zu testen wie ich am einfachsten EventHandling für Lokale durchführe klappt die Lösung wunderbar.

Zu den Verwendeten Layoutmanagern, ja ich geb dir recht, ich arbeite mich zzt. unter anderem auch in das GroupLayout ein , das MigLayout habe ich mir auch schon angesehen, gehört allerdings auch nicht zu den Bordmitteln (was jetzt nicht unbedingt negativ sein soll, ich wollte mich lediglich in alle LayoutManager einarbeiten ), und ich muss sagen , bis auf die Tatsache das der code unter verwendung des GridBagLayouts relativ lang wird, und es einen was die Ausrichtung angeht manchmal in den Wahnsinn treiben kann, ist es doch sehr angenehm zu nutzen wenn man komplexere Layouts realisieren möchte,

ich finde eh das Swing Programmierung ( von Hand ) ein doch sehr sehr umfangreiches und komplexes Thema ist, das ich jedoch nicht missen möchte, denn das Wissen und das können z.B eine Komplette Gui nicht einfach nur in einem Swing designer zusammenzuklicken, möchte ich nicht wieder hergeben :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
A Verständnisfrage Java Basics - Anfänger-Themen 12
M Verständnisfrage: Warum wird die Datei ohne Inhalt übertragen Java Basics - Anfänger-Themen 3
P Verständnisfrage: PageFactory.initElements Java Basics - Anfänger-Themen 2
R do while Schleife Verständnisfrage Java Basics - Anfänger-Themen 2
G while.next() Verständnisfrage Java Basics - Anfänger-Themen 16
Vivien Kurze Verständnisfrage zu Java Point aus java.awt.* Java Basics - Anfänger-Themen 5
C Erste Schritte Anfänger Verständnisfrage zum Compiler Java Basics - Anfänger-Themen 31
T Verständnisfrage Objekt Getter Setter Java Basics - Anfänger-Themen 102
K Verständnisfrage Server/Client BufferedReader, PrintWriter Java Basics - Anfänger-Themen 2
Der Grütz Verständnisfrage zu Übung aus Java Kurs - Schaltjahr bestimmen Java Basics - Anfänger-Themen 2
J Verständnisfrage zu throws neben Funktionen Java Basics - Anfänger-Themen 2
TimoN11 Verständnisfrage bei Aufgabe Java Basics - Anfänger-Themen 2
P Verständnisfrage zum Mapping Java Basics - Anfänger-Themen 3
M Java Version Verständnisfrage Java Basics - Anfänger-Themen 16
M Verständnisfrage zu eine Online Aufgabe Java Basics - Anfänger-Themen 7
T Verständnisfrage zur Konsolenausgabe Java Basics - Anfänger-Themen 2
M Verständnisfrage zu Generics Java Basics - Anfänger-Themen 7
D Verständnisfrage zur Modellierung einer HDD Java Basics - Anfänger-Themen 17
W Methoden Verständnisfrage Vererbung von Methoden Java Basics - Anfänger-Themen 14
S Verständnisfrage lokale Ordnerpfade Java Basics - Anfänger-Themen 1
T Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 7
J Java Starthilfe Verständnisfrage Aufgabe Java Basics - Anfänger-Themen 2
O Anfänger, Verständnisfrage Java Basics - Anfänger-Themen 3
C Verständnisfrage zu Modulo Java Basics - Anfänger-Themen 6
C Verständnisfrage bezüglich der Do-While Schleife Java Basics - Anfänger-Themen 9
L Verständnisfrage - Speicherabbild Java Basics - Anfänger-Themen 4
melly_ Verständnisfrage zu args Java Basics - Anfänger-Themen 3
A Variablen Verständnisfrage bzgl. Variablen/Referenzen Java Basics - Anfänger-Themen 3
K Verständnisfrage eines Abschnitts Java Basics - Anfänger-Themen 6
K Rekursion Verständnisfrage Java Basics - Anfänger-Themen 19
S Modell View Controller Verständnisfrage Java Basics - Anfänger-Themen 24
J Superklassen Konstruktor Verständnisfrage Java Basics - Anfänger-Themen 1
JavaTalksToMe Erste Schritte Println-Frage (Verständnisfrage) Java Basics - Anfänger-Themen 1
R Verständnisfrage zu Objekten u. Übergabeparameter Java Basics - Anfänger-Themen 8
G Collections Verständnisfrage zur For-Each-Schleife Java Basics - Anfänger-Themen 7
b1ck Interface Verständnisfrage zum GUI mit "swing" Java Basics - Anfänger-Themen 1
kilopack15 Verständnisfrage zur Verwendung von notify() bei Threads Java Basics - Anfänger-Themen 2
G Verständnisfrage zu for-each Java Basics - Anfänger-Themen 4
DontFeedTheTroll Erste Schritte Verständnisfrage zu If-Anweisung Java Basics - Anfänger-Themen 7
K Rekursion-Verständnisfrage Java Basics - Anfänger-Themen 4
J Java Server Pages - Verständnisfrage Java Basics - Anfänger-Themen 2
Z Verständnisfrage Anfängerprogramm Java Basics - Anfänger-Themen 0
T Verständnisfrage Zuweisungs-/arithmet. Operatoren Java Basics - Anfänger-Themen 2
G Methoden Verständnisfrage zur Methoden Java Basics - Anfänger-Themen 7
LionAge Kapselung, Verständnisfrage zur Objekterzeugung Java Basics - Anfänger-Themen 4
Z Verständnisfrage zum Multithreading Java Basics - Anfänger-Themen 3
R OOP / Verständnisfrage zum Konstuktor (siehe code) Java Basics - Anfänger-Themen 7
gamebreiti Verständnisfrage zu contains() Java Basics - Anfänger-Themen 10
A Verständnisfrage - Koordinatenumrechnung Java Basics - Anfänger-Themen 9
J Erste Schritte Verständnisfrage im Bezug auf das (richtige) Programmieren Java Basics - Anfänger-Themen 5
M Verständnisfrage zu JUnit Tests und private Methoden Java Basics - Anfänger-Themen 3
H Verständnisfrage Array Java Basics - Anfänger-Themen 2
I Interface Verständnisfrage Interfaces (Bsp.: Enumeration) Java Basics - Anfänger-Themen 2
I Verständnisfrage zu BridgePattern, Verwedung von super() Java Basics - Anfänger-Themen 4
P Verständnisfrage Java Basics - Anfänger-Themen 3
D Input/Output Verständnisfrage Verzeichnis-/Dateiliste erstellen & Dateikonvertierung Java Basics - Anfänger-Themen 1
S Verständnisfrage zu Anweisungen und deren Wirkung Java Basics - Anfänger-Themen 7
H Verständnisfrage für oder Anweisung Java Basics - Anfänger-Themen 8
E Threads Verständnisfrage bzgl. Threads und Sleep Java Basics - Anfänger-Themen 2
T Erste Schritte Verständnisfrage: Getter und Setter Methoden Java Basics - Anfänger-Themen 3
H Verständnisfrage zu Java-Ausgabe Java Basics - Anfänger-Themen 3
S Verständnisfrage Java Basics - Anfänger-Themen 2
N Verständnisfrage Code Java Basics - Anfänger-Themen 8
B Verständnisfrage Java Basics - Anfänger-Themen 2
H Interface Comparable Verständnisfrage Java Basics - Anfänger-Themen 6
B Verständnisfrage Codezeile Java Basics - Anfänger-Themen 7
B Verständnisfrage:Beispielprogramm BlueJ Java Basics - Anfänger-Themen 3
M Kurze Verständnisfrage zu einer Java Aufgabe Java Basics - Anfänger-Themen 12
K Erste Schritte Kleine Verständnisfrage Java Basics - Anfänger-Themen 12
R Verständnisfrage Referenzvariablen in array Java Basics - Anfänger-Themen 3
M Verständnisfrage: Objekt erzeugen u. zuweisen Java Basics - Anfänger-Themen 16
I OOP Verständnisfrage zu Singelton Pattern Java Basics - Anfänger-Themen 21
M Verständnisfrage zu JPanel Java Basics - Anfänger-Themen 3
S Verständnisfrage: Exception Gebrauch Java Basics - Anfänger-Themen 2
R Verständnisfrage NPE Java Basics - Anfänger-Themen 5
M Verständnisfrage zur Zahlenumwandlung (Dezimal-->Dual) Java Basics - Anfänger-Themen 25
P Java Objekte - Verständnisfrage Java Basics - Anfänger-Themen 9
N Verständnisfrage zu folgendem Programm Java Basics - Anfänger-Themen 2
L Grundlegende Verständnisfrage Hasmap Referenzen Java Basics - Anfänger-Themen 4
S Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 2
VfL_Freak Verständnisfrage zur Klasse "TIMER" Java Basics - Anfänger-Themen 7
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
M Verständnisfrage im Umgang mit Map Java Basics - Anfänger-Themen 10
K Verständnisfrage zu int.length und String.length() Java Basics - Anfänger-Themen 4
G 2D Array gleichsetzen verständnisfrage Java Basics - Anfänger-Themen 2
M kleine und einfache Verständnisfrage Java Basics - Anfänger-Themen 3
N verständnisfrage java.util.Calendar Java Basics - Anfänger-Themen 4
G Datentypen bits, bytes, chars - Verständnisfrage Java Basics - Anfänger-Themen 5
E Verständnisfrage zu Shutdownhook Java Basics - Anfänger-Themen 5
D Verständnisfrage: Java und MySql Java Basics - Anfänger-Themen 3
F Rekursion Verständnisfrage Java Basics - Anfänger-Themen 6
A Exception Verständnisfrage: Exceptions während, einer Statischenzuweisung abfangen Java Basics - Anfänger-Themen 10
Z Comparator Verständnisfrage Java Basics - Anfänger-Themen 5
D Verständnisfrage zu Funktionen Java Basics - Anfänger-Themen 6
H Verständnisfrage Persistenz Java Basics - Anfänger-Themen 10
neurox Verständnisfrage zu Threads Java Basics - Anfänger-Themen 4
E Verständnisfrage Syntax: frame.getContentPane().add(button) Java Basics - Anfänger-Themen 11
Y Kleine Verständnisfrage zum Thema dynamische Polymorphie Java Basics - Anfänger-Themen 3
F Verständnisfrage Objekt instanzierung / Polymorphie Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben