Re: Generics ?
 
In article <jcem2m$gbm$1@dont-email.me>,
 Knute Johnson <nospam@knutejohnson.com> wrote:
Using Java 7, given the class file:
import javax.swing.*;
public class KList extends JList {
     ListModel model = new DefaultListModel();
     public KList() {
         setModel(model);
     }
}
I defined a generic subclass of JList:
  class KList<E> extends JList<E> {
      public KList(ListModel<E> model) {
          this.setModel(model);
      }
  }
Then I created a ListModel<String>:
  DefaultListModel<String> dlm = new DefaultListModel<>();
  dlm.add(...);
Then I used it to create a new KList:
  KList<String> list = new KList<>(dlm);
Here's my sscce:
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.*;
/** @see http://stackoverflow.com/a/5372169/230513 */
public class JakesList {
    private static final DateFormat df =
        new SimpleDateFormat("dd-MMM-yyyy");
    private static class KList<E> extends JList<E> {
        public KList(ListModel<E> model) {
            this.setModel(model);
        }
    }
    private static void createAndShowGUI() {
        DefaultListModel<String> dlm = new DefaultListModel<>();
        for (int i = 0; i < 10; i++) {
            GregorianCalendar knownDate = new GregorianCalendar();
            knownDate.add(Calendar.DAY_OF_MONTH, 3 * i);
            dlm.add(i, df.format(knownDate.getTime()));
        }
        KList<String> list = new KList<>(dlm);
        JOptionPane.showMessageDialog(null, list);
    }
    public static void main(String args[]) throws Exception {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                createAndShowGUI();
            }
        });
    }
}
-- 
John B. Matthews
trashgod at gmail dot com
<http://sites.google.com/site/drjohnbmatthews>