Java generics compile error "Class<capture#1-of ? ..." -


i'm in trouble using javax.swing.event.eventlistenerlist class in personal java project. it's not simple one, made simple example has same problem.

package test; public class generictest {     public static void main(string[] args) {         generictest gt = new generictest();         gt.dotest(string.class);     }     private void dotest(class<? extends comparable> type) {         dosomething(type, "test"); // compile error :         // method dosomething(class<c>, c)         // in type generictest not applicable arguments         // (class<capture#1-of ? extends comparable>, string)     }     // third party api javax.swing.event.eventlistenerlist.add()     private <c extends comparable> void dosomething(class<c> ct, c c) {         // ...     } } 

i got generics compile error in codes.

i have many classes extends specific interface java.lang.comparable , want handle of them single method dotest() in codes.

anyone can me?

define c in dosomething comparable or string:

    dotest(string.class); } private static void dotest(class<? extends comparable> type) {     dosomething(type, "test");   } // third party api javax.swing.event.eventlistenerlist.add() private static <c extends comparable> void dosomething(class<c> ct, comparable c) {     // ... } 

please note cannot cast implicitly object,string or comparable c. more insight, inside dosomething try this:

c s = c; //type mismatch: cannot convert comparable c 

Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -