Maison >Java >javaDidacticiel >Comment définir des types de données en Java
1. Explication
Il y a deux raisons pour lesquelles new T() ne peut pas être utilisé dans du code générique. L'une est que le type ne peut pas être déterminé en raison de l'effacement ; l'autre est qu'il ne peut pas être déterminé si T contient un constructeur sans paramètre. .
Nous créons des objets d'instance via un modèle d'usine + des méthodes génériques, créons des usines IntegerFactory et créons des instances Integer. Si le code change plus tard, nous pouvons ajouter de nouveaux types d'usine.
2. Exemple
/** * 使用工厂方法来创建实例 * * @param <T> */ interface Factory<T>{ T create(); } class Creater<T>{ T instance; public <F extends Factory<T>> T newInstance(F f) { instance=f.create(); return instance; } } class IntegerFactory implements Factory<Integer>{ @Override public Integer create() { Integer integer=new Integer(9); return integer; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!