Hirdetés

Új hozzászólás Aktív témák

  • WonderCSabo
    félisten

    Igazad van, a metaadatok koze bekerul, de runtime tipusellenorzes ettol meg sajnos nincs:

    public class IntegerList extends ArrayList<Integer> {
    }

    public static void main(String[] args) {
    IntegerList l = new IntegerList();
    ArrayList<Integer> l2 = l;
    ArrayList l3 = l2;
    ArrayList<Object> l4 = l3;
    l4.add("Hello World");
    System.out.println(l.get(0)); // "Hello World" sztring az IntegerList elso eleme
    }

    Ehhez kepest:

    Ezek persze mind megszokhatoak, csak csokkentik a tipusbiztonsagot.

    12.sor : ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized
    13. sor: Type safety: The expression of type ArrayList needs unchecked conversion to conform to ArrayList<Object>

    Javac meg ezt mondja:

    [WARNING] Test/src/Main.java:[12,17] found raw type: java.util.ArrayList
    missing type arguments for generic class java.util.ArrayList<E>
    [WARNING] Test/src/Main.java:[13,40] unchecked conversion
    required: java.util.ArrayList<java.lang.Object>
    found: java.util.ArrayList

Új hozzászólás Aktív témák