Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

Generics

Description

(OOP) Mind Map on Generics, created by anna.vonflue on 28/02/2014.
anna.vonflue
Mind Map by anna.vonflue, updated more than 1 year ago
anna.vonflue
Created by anna.vonflue over 11 years ago
20
0
1 2 3 4 5 (0)

Resource summary

Generics
  1. Basic-Theory
    1. Code wird wiederverwendbarer - generischer
      1. Können bei Methoden, Interfaces und Klassen verwendet werden
        1. Werden in Grossbuchstaben beschrieben - egal welcher.
          1. E für Entity T für Type K für Key V für Value
          2. Wenn ein Platzhalter nicht ausreicht:
            1. public class KlassMitMehrerenPlatzhaltern<A, B, C, D>
            2. OHNE Generics ist erst zur Laufzeiit bekannt, welchen Typ "inhalt" hat, MIT Generics ist diese Info bereits zur Compilezeit bekannt
            3. Wildcard
              1. ?
                1. Ich kann beschreiben welche generischen Typen (zum Beispiel in einer Liste) erlaubt sind erlaubt
                  1. extends = obere schranke super = untere schranke
                    1. erlaubt bei Istanziierung und Definition
                    2. nur bei der Instanziierung erlaubt, nicht bei der Definition von Generics
                      1. List<? extends Tier>
                        1. Outcome: Etwas vom Typ Tier
                          1. Darf keine Tiere hinzufügen
                            1. verhindern von inkonsistenten Daten
                            2. Nach oben beschränkt
                              1. public static void druckeNamen(List<? extends Tier> tiere){...}
                                1. Wildcard-Operator -> ?
                                  1. gefolgt von extends
                                    1. schliesslich die obere Grenze Tier
                              2. List<? super Tier>
                                1. Darf Objekte vom Typ Tier hinzufügen
                                  1. Outcome: Etwas vom Typ Object
                                    1. Nach unten beschränkt
                                      1. public static void vermehrtEuch(List<? super Tier> tiere {...}
                                        1. Wildcard-Operator
                                          1. gefolgt von super
                                            1. schliesslich die untere Grenze
                                    2. Basic-Code
                                        1. <E> = formaler Typ, Platzhalter für Klasse oder Interface
                                          1. Als Parametertyp im Konstruktor
                                            1. Als Rückgabetyp von Methoden
                                              1. Der Platzhalter als Referenzytp innerhalb Klasse
                                                1. Als Parametertyp in Methoden

                                              Media attachments

                                              Show full summary Hide full summary

                                              0 comments

                                              There are no comments, be the first and leave one below:

                                              Similar

                                              Methoden, Getter/Setter, Konstruktoren und Objekte
                                              anna.vonflue
                                              A-Level Chemistry: Atomic Structure
                                              cian.buckley+1
                                              Tourism 1
                                              Scott Church
                                              Of Mice and Men
                                              becky_e
                                              OCR Gateway Biology Flash Cards
                                              Sam Newey
                                              Biology B1.3
                                              raffia.khalid99
                                              Key policies and organisations Cold War
                                              E A
                                              Think Python
                                              tsilvo2001
                                              Social Influence
                                              olimcconnell