J’ai un problème avec un avertissement dans Java 7: Unchecked assignment: ‘java.lang.Class’ to ‘java.lang.Class’ Je l’obtiens sur la ligne Class type = typeMap.get(key); dans la fonction get ci-dessous. En gros, ce que j’essaie de faire ici, c’est que je veux stocker un tas de paires clé / valeur de types inconnus (mais tous sont des […]
Je suis tombé sur une situation de casting Java impliquant des génériques et des interfaces que je ne comprends pas. Veuillez considérer le code suivant où je crée une List . Et ensuite, get() un élément et convertissez-le dans Interface2 sans erreur de compilation, bien que ces deux interfaces ne soient absolument pas liées. import […]
La classe suivante définit deux méthodes, qui ont intuitivement toutes les deux la même fonctionnalité. Chaque fonction est appelée avec deux listes de type List List et une valeur booléenne qui spécifie laquelle de ces listes doit être assignée à une variable locale. import java.util.List; class Example { void chooseList1(boolean choice, List list1, List list2) […]
Idéalement, cela ressemblerait à ceci (le contexte importe peu): public interface myInterface extends Iterable, Iterable { … } Mais ce n’est pas autorisé en Java. Comment puis-je obtenir ce comportement?
Comment appeler une méthode générique personnalisée par reflection dans Java? class Person { public void print(T t) { System.out.println(t.toSsortingng()); } }
J’ai un code qui ressemble à ceci: public class A { private T one() { return (T) this;} protected T two() { return (T) this;} protected void three() { two().one(); } } Et IntelliJ me dit que “one () a un access privé dans A”, mais bon, pourquoi ne puis-je pas appeler le membre privé […]
Bien que je comprenne certains cas critiques de génériques, il me manque quelque chose avec l’exemple suivant. J’ai la classe suivante 1 public class Test { 2 public static void main(Ssortingng[] args) { 3 Test t = new Test(); 4 List<Test> l =Collections.singletonList(t); 5 } 6 } La ligne 4 me donne l’erreur Type mismatch: […]
Je suis sûr que cela a déjà été répondu, mais je ne peux vraiment pas le trouver. J’ai une classe java SomeClass et une classe abstract SomeSuperClass . SomeClass étend SomeSuperClass . Une autre méthode abstraite a une méthode qui renvoie une Collection . Dans une classe d’implémentation, j’ai une Collection myCollection Je comprends que […]
Comme je le sais, l’un des principaux objectives des génériques en Java est d’assurer la sécurité du type compilation. S’il est compilé, le code s’exécutera sans problème. Alors pourquoi le code suivant est-il compilé? public static void main(Ssortingng[] args) { Ssortingng s = getList(); } private static T getList() { return (T)new ArrayList(); } Ça […]
J’ai le code suivant: private HashMap<Class, HashMap> m_componentStores; public T getComponent(Entity e, Class exampleClass) { HashMap store = m_componentStores.get(exampleClass); T result = (T)store.get(e); if (result == null) { throw new IllegalArgumentException( “GET FAIL: “+e+” does not possess Component of class\nmissing: “+exampleClass ); } return result; } Lorsque je comstack, cela montre que T result = […]