Code Comments
Programming Forum and web based access to our favorite programming groups.Hello,
I try to model the following structure:
A DomainModel has several Concepts as sons and
a Concept has several Categories as sons and
a Category may also have Categories as sons.
I modeled it like that:
public abstract class DomainModelElement<C extends DomainModelElement>
implements DomainModelTokens {
protected Vector<C> children = new Vector<C>();
..
public class DomainModel extends DomainModelElement<Concept> {
..
public class Concept extends DomainModelElement<Category> {
..
public class Category extends DomainModelElement<Category> {
..
So I pass the child type to the element, so I can use generic
implementations
of the methods for accessing the children. When I compile everything
works fine
until the compiler see the Category class. It says:
Bound mismatch: The type Category is not a valid substitute for the
bounded parameter <C extends DomainModelElement> of the type
DomainModelElement<C> Category.java
although Category is a subclass of DomainModelElement<C>.
Can anybody help?
Thanks beforehand,
David Kensche
Post Follow-up to this message
"David" <david.kensche@post.rwth-aachen.de> wrote in message
news:e0f4e8a2.0409290432.1853ea7a@posting.google.com...
> ...
> public abstract class DomainModelElement<C extends DomainModelElement>
> implements DomainModelTokens {
> protected Vector<C> children = new Vector<C>();
> ..
> public class DomainModel extends DomainModelElement<Concept> {
> ..
> public class Concept extends DomainModelElement<Category> {
> ..
> public class Category extends DomainModelElement<Category> {
> ..
> ...
>
> Bound mismatch: The type Category is not a valid substitute for the
> bounded parameter <C extends DomainModelElement> of the type
> DomainModelElement<C> Category.java
What version of Java are you using? This seems to work fine
in 1.5.0 rc.
Post Follow-up to this message> What version of Java are you using? This seems to work fine > in 1.5.0 rc. Hi, I am using jdk1.5.0. Don't know what rc stands for but this should be the same, shouldn't it? David
Post Follow-up to this messagedavid.kensche@post.rwth-aachen.de (David) writes: > I am using jdk1.5.0. Don't know what rc stands for but > this should be the same, shouldn't it? RC = release candidate, which was the last version available before the now-available final release.
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.