Java lernen: Java Frage wegen Ausgabe

Hallo, ich habe angefangen, Java zu programmieren und habe auch meine erste Anwendung hinbekommen. Sie funktioniert allerdings nicht so wie geplant.

Erst die Sachlage: Es ist eine Konsolenanwendung, die einem eine Zeile zum Ausfüllen bereitstellt, worin man seinen Namen eintragen kann. Anschließend wird man gefragt, ob man einen weiteren Namen hinzufügen möchte.

Es gibt insgesamt 3 .java Dateien. Formular.java mit der main-Methode,
Option.java, wo der User mit Ja oder Nein antwortet, und eine Eingabefelder.java Datei, wo der User eben den Namen eingibt.

Nun der Code:
*Formular.java

public class Formular{  
	public static void main(String[] args){  
          System.out.println("Bitte tragen Sie die notwendigen Daten ein.");  
	  Eingabefelder ausgabe = new Eingabefelder();		  
          System.out.println("Möchten Sie einen neuen User einfügen?");  
	  Option antwort = new Option();  
	}  
}

*Eingabefelder.java

import java.util.*;  
public class Eingabefelder{  
	Scanner eingabe = new Scanner(System.in);  
	String vorname;	  
	public String e_vorname(){  
		System.out.print("Vorname: ");  
		vorname = eingabe.next();  
		return(vorname);  
	}  
}

*Option.java

import java.util.*;  
public class Option{  
	String auswahl;  
	Scanner optionseingabe = new Scanner(System.in);  
	public String ja_oder_nein(){  
		System.out.print("Antwort: ");  
		auswahl = optionseingabe.next();  
		return(auswahl);  
	}  
}

Nun zum Problem: Die Felder werden nicht angezeigt. Was habe ich falsch gemacht?

  1. Leute das oben genannte Problem ist gelöst, aber ich habe ein neues:

    Wie kann ich mit einem Array objekte erstellen?

    Sprich: Object id1[1] = new Object();

    wie funktioniert das?

    Hintergrund ist, dass in einer while schleife so lange objekte erzeugt werden sollen, bis eine bedingung erfüllt ist.

    1. Hi!

      Leute das oben genannte Problem ist gelöst,

      Es wäre sowieso nicht ohne Rückfrage zu klären gewesen, denn du zeigst wie bei deinem Problem von vor ein paar Tagen nur den Code, der Klassen definiert, in welchem auch ein paar Objekte erzeugt werden, aber keinen Code, der irgendwas mit diesen Objekten anfängt. Ich nehme an, dass die Lösung darin besteht, dass du nun gelernt hast, nicht nur Klassen zu definieren und davon Objekte zu instantiieren sondern letztere auch zu verwenden.

      aber ich habe ein neues:
      Wie kann ich mit einem Array objekte erstellen?

      Die Frage musst du anders stellen. Objekte werden mit new erstellt und das kennst du bereits. Auch bei einer Ablage in einem Array-Element bleibt das Instantiieren so.

      Sprich: Object id1[1] = new Object();
      wie funktioniert das?

      Was dir hingegen noch an Wissen zu fehlen scheint, ist der allgemeine Umgang mit Arrays. Ein Array muss zunächst als solches definiert und angelegt werden. Erst dann können Werte hinzugefügt werden. Bei PHP beispielsweise ging das implizit, der erste Schreibzugriff, beispielsweise $foo[] = 'bar', legte in einem Schritt das Array an und wies den Wert zu. Das sind in Java zwei separate Vorgänge. Wie das konkret geht, steht in jedem Java-Anfänger-Tutorial.

      Und ja, es gibt auch eine Syntax, um ein Array in einem Schritt zu füllen. Aber das ist dann auch ein vollständiger Schritt und kein "wir fangen erstmal mit einem Element an".

      Hintergrund ist, dass in einer while schleife so lange objekte erzeugt werden sollen, bis eine bedingung erfüllt ist.

      Dann solltest du eine Liste nehmen und kein Array. Ein Array hat eine starre, feste Größe, eine Liste wächst mit ihren Elementen.

      Lo!