Re: Off-topic: Java Reflection/Generics/Collections question
What you try to do is not a valid operation in type-safe language as Java. You can't convert Coll to CollItemType, but you can cast Coll? to CollWhatever. Don't know if this is OK with the problem you're trying to solve Merry Christmas! On Fri, Dec 26, 2008 at 4:20 PM, Frank Staals franksta...@gmx.net wrote: Not realy a FreeBSD-specific question but I was not sure where I could find what I was looking for elseware (Googling did not manage to dig up much info): The problem: I want to set the type of objects some Collection object holds on runtime. In other wors I have an object C with: C extends AbstractCollection, I have the Class object T specifying what type of objects C should hold and I have a method M which takes a CT as an argument. I made a generic version of C (without the type) and now I have to set it so it can only carry objects of type T. Does anyone know how to do this ? Information in programming style: C extends AbstractCollection myCollection; Class itemType; public void myMethod(CitemType myCollectionArgument) How do I convert myCollection from being a C to a CitemType on runtime so I can call myMethod(myCollection) ? I hope the explanation of my problem makes sense and someone can help me. Regards, -- - Frank ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org
Re: Off-topic: Java Reflection/Generics/Collections question
Vladimir Tsvetkov wrote: What you try to do is not a valid operation in type-safe language as Java. You can't convert Coll to CollItemType, but you can cast Coll? to CollWhatever. Don't know if this is OK with the problem you're trying to solve Merry Christmas! On Fri, Dec 26, 2008 at 4:20 PM, Frank Staals franksta...@gmx.net mailto:franksta...@gmx.net wrote: Not realy a FreeBSD-specific question but I was not sure where I could find what I was looking for elseware (Googling did not manage to dig up much info): The problem: I want to set the type of objects some Collection object holds on runtime. In other wors I have an object C with: C extends AbstractCollection, I have the Class object T specifying what type of objects C should hold and I have a method M which takes a CT as an argument. I made a generic version of C (without the type) and now I have to set it so it can only carry objects of type T. Does anyone know how to do this ? Information in programming style: C extends AbstractCollection myCollection; Class itemType; public void myMethod(CitemType myCollectionArgument) How do I convert myCollection from being a C to a CitemType on runtime so I can call myMethod(myCollection) ? I hope the explanation of my problem makes sense and someone can help me. Regards, -- - Frank ___ freebsd-questions@freebsd.org mailto:freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org mailto:freebsd-questions-unsubscr...@freebsd.org Whell just after I posted my mail to this list I realized that I may have fogotten to mention something: I want to do the 'conversion' because the myCollection Collection is still empty. So in other words I want to create a new collection and fill it. However I do not know the type of the items I want to put in beforehand so it has to occur dynamically. So an equivalent question may be: How do I create a new 'C extends AbstractCollectionitemType' using reflection ? -- - Frank ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org