Instanzen durch Methode

DarkMathis

Mitglied
Also, mein Problem besteht darin, dass ich eine methode brauche, mit der ich neue instanzen für meinen Konstruktor baue... Beispiel:
Java:
public class Person{
  private String pName;
  private String pNachname;
  public Person(String name, String nachname({
    pName = name;
    pNachname = nachname;
  }
  public static void neueInstanz(int id, String name, String nachname){
    Person id(hier liegt das Problem) = new Person(name, nachname);
  }
}
Wie kann ich den namen der instanz durch eine variable ersetzen? :rtfm:
Danke im voraus
mfg Mathis
 
Zuletzt bearbeitet von einem Moderator:
G

Gast2

Gast
Java:
Person peter = Person.neueInstanz("Peter", "Pan");
System.out.println(peter.pName); // besser nen getter verwenden
So macht die statische Methode allerdings keinen Sinn, du kannst genauso gut den Konstruktor nutzen.

EDIT:
Die Methode muss natürlich Person als Rückgabewert besitzen.
 

MWCS

Mitglied
Array der Personen erstellen? Das würde mir spontan einfallen. Ich weiß worauf du hinauswillst, aber man kann das Problem nur lösen wenn man die Anwendung deiner Klasse verstehen würde.

Ein Beispiel:

Java:
Person[] personen = new Person[10];
personen[0] = new Person("Max", "Mustermann");

somit hat Max Mustermann die ID 0...
 
Zuletzt bearbeitet:

DarkMathis

Mitglied
naja, ich möchte halt über einige Eingaben in die Konsole die Funktion auslösen, mit der ich eine neue Instanz erstelle also nicht im code sondern über die Benutzeroberflächewäre.
Halt ziemlich blöd z.B. 1000 instanzen zu erstellen nur um per Benutzeroberfläche eine freie Id(/Namens)-wahl zu haben. :(
 

kaetzacoatl

Bekanntes Mitglied
public static void neueInstanz(int id, String name, String nachname){
Person id(hier liegt das Problem) = new Person(name, nachname);
}
Du wandels hier eine int Variable in eine Person um!
Ich weiß zwar nicht genau was du willst, aber fügt
doch einfach id als Variable ein.
Code:
Person(int id,String name,String vorname)
 

MWCS

Mitglied
Hashtable (Java 2 Platform SE v1.4.2)

Nimm eine Hashtable auf.

Java:
public class Person{
	private static Hashtable personen = new Hashtable();
	private String pName;
	private String pNachname;
	
	public Person(String name, String nachname){
		pName = name;
		pNachname = nachname;
	}
	
	public static void neueInstanz(int id, String name, String nachname){
		personen.put(id, new Person(name, nachname));
	}
}

keine Garantie ob der Code geht. Eine Hashtable ist aber die beste möglichkeit dafür.

//Edit: Ist mir auch schon aufgefallen das die in Java abstrakt ist. C# bietet das aber an. Naja, dann halt eine Hashtable... -.-
 
Zuletzt bearbeitet:
G

Gast2

Gast
@MWCS
Nimm statt der HashTable lieber eine Map Implementierung. Wenns dann doch auf Threadsicherheit ankommen sollte (kann ich mir bei diesem Beispiel nicht vorstellen...) dann eine synchronized Map.
 

DarkMathis

Mitglied
hm, mal ne andere Frage, kann man denn ein objekt nach seinem inhalt auswählen, also z.B.
If (Person.id == 10)
System.out.println(Person.name + Person.nachname)
 
Zuletzt bearbeitet:

Michael...

Top Contributor
hm, mal ne andere Frage, kann man denn ein objekt nach seinem inhalt auswählen, also z.B.
If (Person.id == 10)
System.out.println(Person.name + Person.nachname)

Keine Ahnung was das mit Auswahl zu tun hat. Hier wird nur ein Attribut eines Objektes überprüft und falls das Attribut 10 entspricht werden andere Attribute ausgeben.

Eventuell erläuterst Du uns Mal was Du konkret vorhast. Bisher hört sich alles etwas merkwürdig an.
 

DarkMathis

Mitglied
Also: Es geht um ein simples Anfängerprogramm.
Im standard gibt es zwei Konten, die festgelegte daten haben und auf denen man geld einzahlen/abheben/überweisen kann. Das ursprüngliche projekt läuft auch über bluej also ohne eigene "Benutzeroberfläche"
Ich habe das jetzt erweitert und benutze zum steuern texteingaben in der konsole in Eclipse.
Allerdings möchte ich auf diesem Weg auch einfach ein neues Konto erstellen können, wo ich dann auch Geld einzahlen kann, also muss es einen Namen bekommen, den ich dann weiß, d.h. am besten einen den ich selber eingebe. Das Problem ist halt wie ich auswähle auf welches Konto ich z.B. Geld einzahle
 
G

Gast2

Gast
Du kannst die Konten in einer Liste sammeln (List<Konto>), falls jemand ein Konto auswählen will kannst du ihm ne Liste anzeigen:
Code:
0: festes Konto 1
1: festes Konto 2
2: Konto von Peter
3: Konto von Klaus
Wenn der User die Zahl eingibt kannst du das entsprechende Konto per
Code:
List#get(index)
rausholen und damit arbeiten, z.b. Geld einzahlen.
Wie du siehst brauchst du keine Variable mit nem Namen um das Objekt ansprechen zu können.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
C Was machen mit nicht mehr verwendeten Instanzen ? Java Basics - Anfänger-Themen 18
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
A Klassen Zugriff auf Instanzen Java Basics - Anfänger-Themen 2
F Mehrere Instanzen der Klasse A EINER Instanz der Klasse B übergeben Java Basics - Anfänger-Themen 3
M Alle Instanzen einer Klasse ansprechen Java Basics - Anfänger-Themen 4
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
Q OOP Mehrere Instanzen auf ein Feld Java Basics - Anfänger-Themen 13
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
S Direkt Instanzen anlegen Java Basics - Anfänger-Themen 1
K Variablen Instanzen gleich aber warum ? Java Basics - Anfänger-Themen 3
W Zugriff auf Instanzen von Klassen Java Basics - Anfänger-Themen 8
S aus Text Datei Instanzen erzeugen, so richtig? Java Basics - Anfänger-Themen 4
O Liste aller Instanzen einer Klasse Java Basics - Anfänger-Themen 18
H Klassen Instanzen mit anderen Klassen erzeugen Java Basics - Anfänger-Themen 5
C Referenzen zu Instanzen einer Klasse im Array Java Basics - Anfänger-Themen 8
B Enum: Instanzen Java Basics - Anfänger-Themen 10
M Instanzen vergleichen? Java Basics - Anfänger-Themen 12
H Klassen, Konstruktoren, Instanzen etc Java Basics - Anfänger-Themen 6
W Instanzen, Klassen Java Basics - Anfänger-Themen 2
C Vectorarrays und Instanzen Java Basics - Anfänger-Themen 10
S alle instanzen einer klasse löschen Java Basics - Anfänger-Themen 18
C OOP Instanzen ansprechen Java Basics - Anfänger-Themen 3
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
B Zugriff auf Variablen in nicht bekannten Instanzen Java Basics - Anfänger-Themen 6
R mit klassen-instanzen arbeiten in packages Java Basics - Anfänger-Themen 10
M Instanzen, Referenzen und Collections Java Basics - Anfänger-Themen 3
A Mehrere Instanzen einer eigenen Klasse in einem Array Java Basics - Anfänger-Themen 5
W mehrere (numerierte) Instanzen erzeugen Java Basics - Anfänger-Themen 3
M Dynamisch Instanzen erstellen. Java Basics - Anfänger-Themen 4
N Instanzen von beliebigen Klassen aus dem Filesystem erzeugen Java Basics - Anfänger-Themen 7
M Problem mit Instanzen von JLabel Java Basics - Anfänger-Themen 4
E Vermeiden,dass mehrere Instanzen eines Java-Programms laufen Java Basics - Anfänger-Themen 2
V mehrere Instanzen gleicher Name möglich? Java Basics - Anfänger-Themen 3
E instanzen von Klassen erzeugen Java Basics - Anfänger-Themen 2
H Instanzen erzeugen und Methoden aufrufen Java Basics - Anfänger-Themen 5
L verschiedene JPanel-Instanzen erstellen Java Basics - Anfänger-Themen 8
K Eindeutige Instanzen von einem Objekt Java Basics - Anfänger-Themen 13
T Wo Daten ablegen für mehrere Servlet-Instanzen? Java Basics - Anfänger-Themen 2
G Instanzen in einem Feld erzeugen Java Basics - Anfänger-Themen 9
J Instanzen dynamisch erzeugen Java Basics - Anfänger-Themen 8
T Instanzen von abstrakten Klassen? Java Basics - Anfänger-Themen 14
D Instanzen einer Klasse Java Basics - Anfänger-Themen 6
G Speicherung von Referenzen auf Instanzen Java Basics - Anfänger-Themen 5
G alle Instanzen einer Klasse serialisieren Java Basics - Anfänger-Themen 4
Silver-Blue mehrere Instanzen einer Klasse, trotz Random immer das Selbe Java Basics - Anfänger-Themen 7
W Instanzen herunterzählen Java Basics - Anfänger-Themen 7
G Instanzen und Referenzen Java Basics - Anfänger-Themen 5
S Instanzen Java Basics - Anfänger-Themen 4
G wenn auch schon oft gefragt (Konstruktor , Instanzen , usw) Java Basics - Anfänger-Themen 6
T Ich brauche eine Schleife die eine beliebige Zahl so lange durch 10 teilt bis zur Null Java Basics - Anfänger-Themen 5
X wie bekomme ich durch Eingabeaufforderung definierte double in einen Befehl, welcher 3 erwartete double braucht? Java Basics - Anfänger-Themen 3
T float soll durch schleife die größte mögliche Zahl herausfinden, Ausgabe ist aber "Infinity" Java Basics - Anfänger-Themen 1
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
T Eingabe durch eine Zahl dividieren nachgucken? Java Basics - Anfänger-Themen 4
G Programm läuft durch, ohne Eingabe aus dem Chat abzuwarten Java Basics - Anfänger-Themen 4
S IntelliJ geht alle Klassen durch Java Basics - Anfänger-Themen 9
A 1 Leerzeichen durch zwei Leerzeichen ersetzen Java Basics - Anfänger-Themen 4
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
Thomas06 Wie kann man mithilfe von boolean herausfinden ob eine zahl durch 5 und 7 teilbart ist ? Java Basics - Anfänger-Themen 7
A JTextArea entfernen und durch neuen Text ersetzen Java Basics - Anfänger-Themen 8
B Den Dateipfad einer Java Datei durch Code in Selbiger finden? Java Basics - Anfänger-Themen 10
T Variable durch Action Listener ändern Java Basics - Anfänger-Themen 2
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
Agent4nobody Programmstart durch aufruf des interpreters funktioniert nicht Java Basics - Anfänger-Themen 14
obiwanke Ziffern durch ASCII Character ersetzen Java Basics - Anfänger-Themen 8
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
sserio Java Fx, wie erstellt man einen EventHandler, der durch das Drücken eines Button Texte in eine Table view einfügt Java Basics - Anfänger-Themen 17
S Durch HashMap iterieren Java Basics - Anfänger-Themen 8
A Wenn eine Zahl durch 7 teilbar ist, soll statt der Zahl ein ‘*‘ angezeigt werden. java? Java Basics - Anfänger-Themen 47
K mit <<1 kann man mal 2 machen, mit >>2 geteilt durch zwei und was bewirkt <<<1 und >>>1? Java Basics - Anfänger-Themen 5
A Verarbeiten einer Excel Datei durch das java-Programm Java Basics - Anfänger-Themen 3
C In String, Buchstaben ersetzen durch andere Buchstaben Java Basics - Anfänger-Themen 26
F Initialisieren eines Web-Mp3 Players in Tabs durch "booleans" erst wenn Tab geöffnet wird ...? Java Basics - Anfänger-Themen 1
W Werte durch Konsole einlesen Java Basics - Anfänger-Themen 10
C if-Konstrukt durch switch-Konstrukt ersetzen Java Basics - Anfänger-Themen 14
OZAN86 For Schleife von 1-50 die Zahlen werden durch ein Komma getrennt Java Basics - Anfänger-Themen 10
Bademeister007 Operatoren Alle Zahlen einer ArrayList die durch 5 teilbar ist Java Basics - Anfänger-Themen 2
Y Wie kann ich Konsoleneingaben durch den Scanner mit JUnit 4 testen? Java Basics - Anfänger-Themen 1
yoskaem Text Color durch Klicken eines Buttons in anderer Activity ändern Java Basics - Anfänger-Themen 2
N for Schleife durch Rekursion ersetzen Java Basics - Anfänger-Themen 6
N Probleme beim printen von Arrays durch for Schleife Java Basics - Anfänger-Themen 3
L Iterieren durch eine ArrayList. Integer Array wird übergeben Java Basics - Anfänger-Themen 17
J Eine Position im String durch einen Integer - Wert teilen Java Basics - Anfänger-Themen 5
F Methoden Bitte Helft mir meinen Fehler zu finden. Möchte in diesem Bankenprogramm durch die Konsoleneingabe auswählen welches Konto reduziert und welches erhö Java Basics - Anfänger-Themen 17
E 2D Array - char durch die Matrix "wandern" lassen Java Basics - Anfänger-Themen 7
E Objekt durch Benutzer über Konsole erzeugen - Java Java Basics - Anfänger-Themen 3
F Methode für Teilbarkeit durch 5 tut was anderes.... Java Basics - Anfänger-Themen 3
H Aufruf von Methoden durch Methoden Java Basics - Anfänger-Themen 3
H Wie kann ich durch Methoden definiren? Java Basics - Anfänger-Themen 8
O Mehrfache Scanner-Eingabe durch Komma getrennt Java Basics - Anfänger-Themen 6
M String array durch Eingabe begrenzen Java Basics - Anfänger-Themen 7
J Dynamisches Array durch split()-Funktion? Java Basics - Anfänger-Themen 3
O Typparameter durch Wildcards verallgemeinern Java Basics - Anfänger-Themen 3
G Benutzereingaben durch Zeilenumbruch trennen und in Array individueller Größe speichern Java Basics - Anfänger-Themen 20
B Import Tabelle - Struktur durch User einstellbar Java Basics - Anfänger-Themen 4
K Durch eine Text eingabe etwas Ausführen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben