Bonjour,

J'ai un problème de cast avec mes listes paramétrées. Voici un exemple permettant d'illustrer ce que je veux faire, ça sera mieux qu'une dizaine de lignes de texte

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
public interface TestModel {
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
public interface TestMutableModel extends TestModel {
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public class Test implements TestMutableModel {
    public Test() {
    }
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
public class Main {
    public static void main(String args[]) {
        // Ok ca marche.
        TestModel tm;
        TestMutableModel tmm = new Test();
        tm = tmm;
 
        // KO Ca ne marche pas!
        List<TestModel> ltm;
        List<TestMutableModel> ltmm = new ArrayList<TestMutableModel>();
        ltm = ltmm; // Impossible.
        ltm = (List<TestModel>) ltmm; // Impossible aussi évidemment.
    }
}
Je ne sais pas comment faire, sans me passer des generics. Quelqu'un aurait une solution élégante ?

Merci