extends array[]

Status
Nicht offen für weitere Antworten.

eisenhauer

Mitglied
Hallo,

möchte euch wieder mal um Hilfe bitte:

Ich habe eine Klasse namens flasche die, die Werte Füllmenge, Kosten,... speichert.
Die verschiedenen Flaschen sollen in einer Liste verwaltet werden, also mach ich eine neue Klasse die extends List<flasche> und eine ArrayList<flasche> beinhaltet der ich dann halt Flaschen hinzufuegen kann.

So weit so klar. Jetzt hab ich aber den spezial Fall, dass ich in einer Liste immer nur 5 Flaschen speichern möchte => hab mir gedacht in diesem Fall vl ein Array mit der Größe 4 vom Datentyp flasche zu erzeugen.

Meine Frage ist jetzt: wie lautet nun mein extends ?? extends flasche[] ??
Hab schon einiges probiert, aber noch nichts passendes gefunden.

Danke schon jetzt für eure Antworten!

martin
 

Schandro

Top Contributor
also mach ich eine neue Klasse die extends List<flasche> und eine ArrayList<flasche> beinhaltet der ich dann halt Flaschen hinzufuegen kann.
Das heisst, deine Klasse HAT eine ArrayList als Membervariable und IST eine List. Also gibts zwei Listen wenn du ne Instanz dieser Klasse erstellst...

Meine Frage ist jetzt: wie lautet nun mein extends ?? extends flasche[] ??
Nein.

Entweder du überschreibst alle add-Methoden der Liste (wenn deine Klasse eine (Array-)List IST), oder du stellst ein paar Proxy-Methoden zur Kommunikation von außerhalb mit der Liste des Objectes bereit (wenn deine Klasse eine List HAT). In diesen Proxy-Methoden kannste dann auch ein paar if-Abfragen reinpacken.
(Natürlich könntest du statt der Liste auch nen Array benutzen, da es ja anscheinend eine feste Anzahl an maximalen Elementen hat)

PS: Welche List ist mit "extends List<flasche>" gemeint? Die java.util.List ist ein Interface, und die java.awt.List nimmt keine generics an.
 
Zuletzt bearbeitet:

eisenhauer

Mitglied
Hallo, also ich werde zum allgemeinen Verständnis mal bisschen Quellcode dazugeben (hoffe damit von meiner Unwissenheit abzulenken, die ich benötigen würde um die obere Antwort zu verstehen ;) ):

Classe Schueler (statt Flasche):
[JAVA=42]
public class Schueler
{
int knr;
String nachname;
public Schueler(int knr, String nachname) {
this.knr = knr;
this.nachname = nachname;
}
public int getKnr() {
return knr;
}
public String getNachname() {
return nachname;
}
}
[/code]
ist natürlich keine Hexerei, und jetzt die Classe die die Schüler in einer Liste verwaltet:
Classe SchuelerClasse:
[JAVA=42]
public class Schulklasse extends AbstractListModel
{
private final LinkedList<Schueler> schuelerListe = new ArrayList<Schueler>();

public Schulklasse() { }

public boolean add(Schueler e) {
schuelerListe.add(e);
}

public Schueler remove(int index) {
schuelerListe.remove(index);
}

public Schueler get(int index) {
return schueler.get(index);
}
}
[/code]

Alles keine große Sache... Hätte von euch jetzt gern gewusst ob ich meinem Fall, wo ich maximal 4 Eintragungen in meiner Liste haben möchte, besser:
a) bei der Liste bleibe und bei jedem Eintrag eine Kontrolle machen ob wohl nichts überschritten wird
b) ein Feld von Datentyp Schueler nehme und es von vornherein mit Laenge 3 deklariere. Wie würde in diesem Fall mein extends auschaunen??
 

Michael...

Top Contributor
[JAVA=42]
public class Schulklasse extends AbstractListModel[/code]
Wieso extends AbstractModel? Du nutzt doch garnichts von dieser Klasse

Alles keine große Sache... Hätte von euch jetzt gern gewusst ob ich meinem Fall, wo ich maximal 4 Eintragungen in meiner Liste haben möchte, besser:
a) bei der Liste bleibe und bei jedem Eintrag eine Kontrolle machen ob wohl nichts überschritten wird
b) ein Feld von Datentyp Schueler nehme und es von vornherein mit Laenge 3 deklariere. Wie würde in diesem Fall mein extends auschaunen??
Ich würde Variante a bevorzugen und erweitern brauchst Du gar nichts, da Du ja von der erweiterten Klasse nichts nutzt (s.o)
 

Civilazi

Bekanntes Mitglied
Wieso auf einemal 3 statt 4?

Weder bei einer Länge von 3, noch von 4 passen 5 Schüler in deine Liste :autsch:

Zur Sache: Deine Schulklasse braucht keine Liste zu sein (eine Klasse ist ja auch nicht nur eine Liste von Schülern oder?), sie kann gern eine haben und ein paar Methoden zum Hinzufügen / Entfernen / ... eines Schülers anbieten. So würde ich das machen.
 

khaputt

Mitglied
Java:
public class MyList<E> extends ArrayList<E> {

  @Override
  public boolean add(E aO) {
    if (size() < 3) {
      return super.add(aO);
    }
    System.out.println("Max Anzahl erreicht..." + aO);
    return false;
  }

  public static void main(String[] args) {
    List<String> list = new MyList<String>();
    list.add("Nummer 1");
    list.add("Nummer 2");
    list.add("Nummer 3");
    list.add("Nummer 4");
  }
}
 

ARadauer

Top Contributor
hab mir den Thread jetzt nicht durchgelesen... aber meine meinung: Vererbung wird überbewertet.. Aggregation und Komposition ist Vererbung oft vorzuziehen...

Wenn ich zb eine Klasse habe die eine menge von Objekten darstellt, Schulklasse hat Schüler... ich würde nie die Schulklasse von List erben lassen damit ich die Schüler drin verwalten kann, sondern ich würde einfach einen Liste mit Schülern der Schulklasse als Member geben...
 

Ark

Top Contributor
Ich sehe das genauso wie ARadauer (und habe den Thread genausowenig gelesen :D). Wenn ich schon Vererbung einsetze, dann mit ausschließlich abstrakten Superklassen. Praktisch alle konkreten Klassen (mit oder ohne viel Vererbung) sind bei mir final, und bisher hat dies auch nicht zu Problemen geführt.

Ark
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
M OOP Design Pattern - "extends Observable implements Observer" Allgemeine Java-Themen 0
B public class JarFilter extends FileFilter « Falsch? Allgemeine Java-Themen 4
N Generic extends Generic Allgemeine Java-Themen 5
T SatelliteVector extends Vector3D - Fehler Allgemeine Java-Themen 6
Y extends myEnum Allgemeine Java-Themen 3
N class Task extends TimerTask ohne Blockieren Allgemeine Java-Themen 15
Y Reflection und "extends" Schlüsselwort Allgemeine Java-Themen 3
N myclass extends blubber Allgemeine Java-Themen 2
M ist "public abstract class * extends" möglich? Allgemeine Java-Themen 2
S import vs. extends Allgemeine Java-Themen 2
Fynn29 Liste sortieren ohne Array und ohne vorgegebene Sortierung Allgemeine Java-Themen 24
LucasGlockner Effizienter byte-Zugriff auf ein long[]-Array Allgemeine Java-Themen 8
8u3631984 Frage Performance bei Linked List und Array List Allgemeine Java-Themen 5
M Queue mit einem Array implemetieren Allgemeine Java-Themen 16
M Array Rang eines Elements Allgemeine Java-Themen 4
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
TheSepp Wie kann man Leerzeichen aus einer Array liste entfernen? Allgemeine Java-Themen 10
B HeapSort für Array of Strings funktioniert nur teilweise Allgemeine Java-Themen 3
noah1407 Array Allgemeine Java-Themen 3
D Methoden Teil-Array mit Maximalwert bestimmen Allgemeine Java-Themen 23
N einem Array Objekte hinzufügen die ihr Array position gespeichert haben Allgemeine Java-Themen 34
N zweidimensionalen Array in dreidimensionalen Array speichern Allgemeine Java-Themen 4
N Schnellste Methode, ein Array durchzugehen? Allgemeine Java-Themen 9
T Objekt Array Aufgabe mit Busdatenbank Allgemeine Java-Themen 2
L Array und Index Allgemeine Java-Themen 26
L die 3 größten Zahlen im Array Allgemeine Java-Themen 1
G jToggleButton in Array/ArrayList Allgemeine Java-Themen 12
S Übergabe eines Sortierkriteriums für ein Artikel Array mittels BiPredicate<Artikel, Artikel> Allgemeine Java-Themen 13
Willi.We Array sortieren Allgemeine Java-Themen 5
gotzi242 Array Summe bestimmen tipps? Allgemeine Java-Themen 14
H Matrix ohne Array erstellen Allgemeine Java-Themen 9
Aboya Char Array rekursiv vergleichen Allgemeine Java-Themen 15
V4ll3.Wff Array in Java Allgemeine Java-Themen 4
Noahscript Aus einem byte Array Steuerungszeichen und Code bekommen und ersetzen Allgemeine Java-Themen 3
H Array Sportschütze Allgemeine Java-Themen 6
Sumo_ow "ArrayIndexOutofBoundsException: 2" Array Problem Allgemeine Java-Themen 6
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
M Array verändern Allgemeine Java-Themen 1
A JavaFX 2 dimensionales array Allgemeine Java-Themen 1
LimDul Direktes return eines Array geht nicht Allgemeine Java-Themen 20
S Array dynamisieren oder ArrayList verwenden? Allgemeine Java-Themen 17
M Java 2D Array für ein Grid erstellen ? Allgemeine Java-Themen 2
H Array mit dem Datentype String[] initializieren Allgemeine Java-Themen 7
L ArrayList mit String Arrays in ein Array umwandeln Allgemeine Java-Themen 1
H Elemente aus ArrayList in Array speichern Allgemeine Java-Themen 8
E Datentypen Wie kann ich die Längen der unterschiedlichen Ebenen aus einem Objekt lesen von dem ich weiß, dass es ein mehrdimensionaler Array ist? Allgemeine Java-Themen 3
N Byte Array in Java "dekomprimieren" Allgemeine Java-Themen 3
parrot Array Aufgabe Allgemeine Java-Themen 3
N String Array Eingabe Allgemeine Java-Themen 6
R Warum wird mir in der Konsole das "Standard Array" ausgegeben? Allgemeine Java-Themen 2
N Variablen Array Länge ändern. Allgemeine Java-Themen 8
D Kgv aller Paare aus einem Array mit n integer berechnen Allgemeine Java-Themen 5
W Enumeration ein Array/List als Eigenschaft mitgeben - warum geht das nicht? Allgemeine Java-Themen 0
kodela Problem mit strukturiertem Array Allgemeine Java-Themen 18
A Array Problem Allgemeine Java-Themen 8
Drachenbauer Wie stelle ich fest, ob ein Objekt in meinem Array vorkommt? Allgemeine Java-Themen 5
F Datei in String-Array einlesen Allgemeine Java-Themen 8
L Objekt aus Objekt-array "löschen" Allgemeine Java-Themen 2
I Array Parameter mit 2 Klassen - NullPointerException Allgemeine Java-Themen 3
X Größten Werte in meinem Array löschen? Allgemeine Java-Themen 16
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
F 3 Dimensionales Array mit Allgemeine Java-Themen 9
M Steueralgorithmus verwandelt Array in Anfangszustand Allgemeine Java-Themen 9
W Array vs. ArrayList vs. HashMap Allgemeine Java-Themen 20
D Datentypen 2-3 Baum erstellen mit geordnetem int-array Allgemeine Java-Themen 0
T Objekt in Array packen Allgemeine Java-Themen 6
M Zahlen in Array anordnen Allgemeine Java-Themen 8
M Eclipse Unvollständigen Array ansteuern Allgemeine Java-Themen 2
D Erste Schritte Im Array Werte tauschen Allgemeine Java-Themen 5
Xge For/Array Error: IndexOutOfBounds Allgemeine Java-Themen 4
M Wie kann ich ein int[] Array in einer Methode benutzen? Allgemeine Java-Themen 6
FRI3ND Datentypen Date-Array sortieren - Text mitnehmen? Allgemeine Java-Themen 7
D Integer-Array variabler Größe mit Zahlen befüllen (Schleifen) Allgemeine Java-Themen 0
J Variablen Array ertellen bei model.put Allgemeine Java-Themen 13
S Eindimensionales Array in zweidimensionales Array speichern Allgemeine Java-Themen 5
R convert 2d array list to 2d array Allgemeine Java-Themen 1
J json Array würfel Spalten durcheinander Allgemeine Java-Themen 9
MiMa Array umbau oder Alternative? Allgemeine Java-Themen 5
L Datentypen 3D Array Allgemeine Java-Themen 3
M 2D Array mit unterschiedlichen Längen erstellen und befüllen Allgemeine Java-Themen 11
Mario1409 Methoden JSON Array von URL Allgemeine Java-Themen 8
E Swing Array mit Bildern in GUI darstellen Allgemeine Java-Themen 2
P Array einer abstrakten Klasse Allgemeine Java-Themen 4
H Zweidimensionales Array - Zellen der Tabelle verbinden Allgemeine Java-Themen 2
M Zweidimensionales Array mit Binärzahlen füllen Allgemeine Java-Themen 8
M Array aus Thread Objekten erstellen Allgemeine Java-Themen 2
kodela Dynamisches Array in einer Klasse Allgemeine Java-Themen 5
G Array ohne Aufzählungszeichen ausgeben Allgemeine Java-Themen 6
J Wie kann ich ein Java Array als Säulendiagramm ausgeben? Allgemeine Java-Themen 2
Z 2D Array Pixels reparieren Allgemeine Java-Themen 2
S Algorithmus welcher True-Werte in einem Array findet und auswertet. Allgemeine Java-Themen 5
B Polibios Array erweitern Allgemeine Java-Themen 1
R Index in einem Array löschen Allgemeine Java-Themen 10
R Index in einem Array löschen Allgemeine Java-Themen 2
U Methoden Algorithmus MergeSort String [ ] array sortieren programmieren Allgemeine Java-Themen 17
J Array-List Bubble-Sort Allgemeine Java-Themen 12
4 Variablen Int-Array Int Zuweisen Allgemeine Java-Themen 7
J Array Allgemeine Java-Themen 8
Z Array mit unterschiedlichen Werten Allgemeine Java-Themen 1

Ähnliche Java Themen

Neue Themen


Oben