Tout d'abord, je ne connais que les bases de Java. Maintenant, j'ai le scénario suivant:Comment définir des contraintes sur les types génériques en Java?
J'ai une classe générique:
public class ListObject<T>
{
// fields
protected T _Value = null;
// ..
}
Maintenant, je veux faire quelque chose comme ce qui suit:
ListObject<MyClass> foo = new ListObject<MyClass>();
ListObject<MyClass> foo2 = new ListObject<MyClass>();
foo.compareTo(foo2);
Le problème est, comment puis-je définir la .compareTo() Méthode lorsque T est générique? Je suppose que je dois implémenter une contrainte sur le T générique pour dire que T implémente une interface spécifique (peut-être Comparable, si celle-là existe).
Quelqu'un peut-il me fournir un petit échantillon de code?
Je vais m'en tenir à ListObject pour le moment. –
citronas
Vérifiez également le fil connexe: http://stackoverflow.com/questions/2064169/what-does-this-class-declaration-mean-in-java/2072820, qui traite de la nécessité d'un caractère générique de forme: super T> – sateesh