This seems so idiotic as to be unbeleivable. Here’s some evidence in support:
$ cat x.java class Mailbox<T> { } class t { void lock(Mailbox<Object> mb) { } void t() { lock(new Mailbox<Object>()); lock(new Mailbox<Integer>()); } } $ javac x.java x.java:8: lock(Mailbox<java.lang.Object>) in t cannot be applied to (Mailbox<java.lang.Integer>) lock(new Mailbox<Integer>()); ^ 1 error $
This page last modified on 24 January 2006.