Nested parameter in class

Just one more question about nested parameters. Let's say we have

interface Tag{}

interface Foo<Textends Tag>{}

Why does

Class<?> cl = (Class<?>)String.class;

work but not

Class<Foo><?>> cl = (Class<Foo><?>>)Foo.class;

which fails with an "inconvertible types" error?

[572 byte] By [xolotla] at [2007-11-27 1:55:41]
# 1
http://blogs.sun.com/ahe/entry/why_is_the_capture_of
PeterAhea at 2007-7-12 1:29:05 > top of Java-index,Core,Core APIs...