Comment s'étend HashMap pour permettre à la Chaîne, la Chaîne types

J'ai besoin de créer une classe personnalisée qui s'étend java.util.LinkedHashMap et prend Chaîne de clé et de la Chaîne de valeur et a un no-arg constructeur qui pré-remplit cette carte avec les valeurs initiales.

Je suis bloqué à la première tâche - comment prolonger la LinkedHashMap de telle manière que, au lieu de générique arguments, il n'accepte que les?

J'ai essayé cette, (pas de travail)

import java.util.LinkedHashMap;

@SuppressWarnings("serial")
public class MyMenu<String, String> extends LinkedHashMap<String, String> {


    public MyMenu(){
        this.put("index.jsp", "Home Page");
    }
}
Vous avez oublié de compléter votre dernière phrase. De toute façon, il ne sera pas question, sauf si vous en montrer un peu de code que vous pourriez avoir essayé.
L'extension de LinkedHashMap est presque certainement une mauvaise solution. Vous pouvez utiliser sa forme paramétrée ou de l'utilisation de la composition à la place de l'héritage.
Je ne voudrais pas avoir des problèmes avec la composition, mais alors j'aurais besoin d'une méthode de lecture pour getMap() de mon objet. Je voulais que mon objet à une table de hachage de sorte qu'il serait plus facile à utiliser à partir de jsp avec jstl
je suis d'accord avec @dystroy. nous utilisons une méthode utilitaire avec varargs pour initialiser une carte avec des valeurs initiales.
Vous ne serait pas nécessairement besoin d'un getter pour obtenir le Map dans un modèle de composition. Vous pourriez mettre en œuvre les Map interface et simplement déléguer à votre...délégué...

OriginalL'auteur Wil | 2012-11-05