Superclass/subclass as Map element problem

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Mark Brading
    New Member
    • Sep 2007
    • 2

    Superclass/subclass as Map element problem

    Hi all,

    I am trying to declare a Map object with an abstract superclass (TableFields_v2 ) object as follows:-
    Code:
    private Map<Integer, TableFields_v2> elementList;
    When I come to create the object element for the Map I want to be able to use a subclass of the superclass for the object; for example:-

    Code:
    this.elementList = new HashMap<Integer, TableFields_v2_Year>();
    Where TableFields_v2_ Year is a subclass of TableFields_v2

    However, Java won't let me do it this way! Can anyone help, or offer a suggestion?


    Regards, Mark
  • r035198x
    MVP
    • Sep 2006
    • 13225

    #2
    Originally posted by Mark Brading
    Hi all,

    I am trying to declare a Map object with an abstract superclass (TableFields_v2 ) object as follows:-
    Code:
    private Map<Integer, TableFields_v2> elementList;
    When I come to create the object element for the Map I want to be able to use a subclass of the superclass for the object; for example:-

    Code:
    this.elementList = new HashMap<Integer, TableFields_v2_Year>();
    Where TableFields_v2_ Year is a subclass of TableFields_v2

    However, Java won't let me do it this way! Can anyone help, or offer a suggestion?


    Regards, Mark
    [CODE=java]Map<Integer, ? extends MyClass> myMap;[/CODE]
    Map where an Integer is mapped to an object whose class extends MyClass.

    Comment

    • Mark Brading
      New Member
      • Sep 2007
      • 2

      #3
      Originally posted by r035198x
      [CODE=java]Map<Integer, ? extends MyClass> myMap;[/CODE]
      Map where an Integer is mapped to an object whose class extends MyClass.

      r035198x,

      Works perfect.

      Many thanks for this, Mark

      Comment

      Working...