Generic merhfach Angabe

G

Gast2

Gast
Hallo zusammen,

ist es möglich bei einer Methode oder Membervariable eine mehrfach Angabe zu machen?
Bsp.

Java:
public abstract class Tier {

 public abstact gibLaut();
}

Java:
public interface Flugobjekt{

 Integer getV();
}

Java:
public class Tiger extends Tier{

//Tier methode;
}

Java:
public class Vogel extends Tier implements Flugobjekt{

//beide methoden;
}

Java:
public class Flugzeug implements Flugobjekt{

//Flugobjekt methode;
}

Nun würde ich gern sowas hier machen
Java:
public class Test{

public <E extends Tier & Flugobjekt> E getFlugtiere(){
//hier nur Vogel zurückgeben, kein Tiger und auch kein Flugzeug 
}

}

Ist sowas möglich???
Ein besseres Bsp. ist mir nicht eingefallen ;)
 

Ark

Top Contributor
Füge noch eine Klasse Flugtier im Baum ein:

Objekt <- Tier <- Flugtier (implements Flugobjekt) <- Vogel

Dann kannst du Flugtier auch als Klasse angeben.

Ark
 
S

SlaterB

Gast
geht schon einigermaßen, wobei da eher die Frage ist, ob die die Methode an sich richtig benutzt,
Java:
public class Test {
    public static void main(String[] args)  {
        flieg(new Vogel()); // geht gut
        flieg(new Vogel2()); // geht gut
        Vogel o = getFlugtiere(); // geht gerade so, zufällig
        Vogel2 o2 = getFlugtiere(); // Exception
        // Flugobjekt o = getFlugtiere();  // geht anscheinend nicht
        // Tier o = getFlugtiere(); // geht anscheinend nicht
        Tier o3 = Test.<Vogel>getFlugtiere(); // geht gerade so, zufällig
    }

    public static <E extends Tier & Flugobjekt>E getFlugtiere() {
        E e = (E)new Vogel();
        return e;
    }

    public static <E extends Tier & Flugobjekt>void flieg(E e) {
        System.out.println("was fliegt denn da?: " + e.getV() + ", " + e.gibLaut());
    }
}
 
G

Gast2

Gast
Und bei getFlugtiere() bekomm ich jetzt nur die Methoden vom Tier das hab ich nicht verstanden...
Sprich getFlugtiere().getV(); geht nicht...
Und warum casten muss hab ich auch nicht ganz verstanden...
 
G

Gast2

Gast
Anscheinend ja nicht weil wenn ich getFlugtiere() aurufe hab ich keine methode vom interface...
 
S

SlaterB

Gast
ja, und Flugzeuge kann man nicht im Fliegen ordentlich putzen, dafür fliegen sie zumindest

einige Dinge gehen, nicht alle, feststellen und weitermachen ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O Werte einer Generic LinkedList zusammenrechenen Allgemeine Java-Themen 14
Rakshan Generic reading of XML document from the root tag into an Collection Allgemeine Java-Themen 0
B In Java Methode mit generic input und output basteln? Allgemeine Java-Themen 4
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
S Problem mit Generic bei unmodifiableCollection Allgemeine Java-Themen 4
Neumi5694 Methoden Generic: Rückgabetyp als Class-Parameter übergeben Allgemeine Java-Themen 3
Neumi5694 Datentypen Generic mit parameterlosem Konstructor Allgemeine Java-Themen 4
C Generic collections und static typing Allgemeine Java-Themen 4
K Generic class und Reflection Allgemeine Java-Themen 2
K Saubere Verwendung von Generic Types Allgemeine Java-Themen 7
T Generic Allgemeine Java-Themen 1
C Generic-Funktion nur bei bestimmten Typen erlauben Allgemeine Java-Themen 6
M Cannot create a generic array of T Allgemeine Java-Themen 5
N Generic extends Generic Allgemeine Java-Themen 5
TheWhiteShadow Generic Bug? Allgemeine Java-Themen 19
P Generic zur Laufzeit Allgemeine Java-Themen 4
X Generic muss zwei Klassen/Interfaces erfüllen Allgemeine Java-Themen 5
S Reflection und Generic Allgemeine Java-Themen 9
G Klasse eines Generic Allgemeine Java-Themen 6
J Generic von einer ArrayList/HashMap bekommen Allgemeine Java-Themen 7
Dragonfire Generic Typ zur Laufzeit Allgemeine Java-Themen 9
N Casten durch generic vermeiden ?? Allgemeine Java-Themen 10
N generic reflection Allgemeine Java-Themen 5
thE_29 Generic Methoden die sich aufrufen wollen nicht immer Allgemeine Java-Themen 12
A Generic-Problem. was meint ihr dazu? Allgemeine Java-Themen 4
G unbekanntes Generic Allgemeine Java-Themen 12
K Bound mismatch: The generic method sort(List<T>) of ty Allgemeine Java-Themen 4
V ArrayList ist nicht generic!?? Oder bin ich blöd? Allgemeine Java-Themen 2
G [quote]the type HashMap is not generic; it cannot be paramet Allgemeine Java-Themen 4
C Generic Type ermitteln Allgemeine Java-Themen 3
H References to generic type Test.A<typ> should be param Allgemeine Java-Themen 5
byte Generic Type einer List zur Laufzeit rausfinden? Allgemeine Java-Themen 4
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
B NullPointerException ohne Angabe Allgemeine Java-Themen 5
N JAR Datei ausführen unter Angabe einer speziellen Klasse Allgemeine Java-Themen 2
D design gesucht - Angabe von zu ersetzenden substrings Allgemeine Java-Themen 2
G jar archiv und native klassen (pfad angabe) Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben