Here's what happens when Java code uses a type parameter in a static feature:
$ cat SharedMailbox.java
class SharedMailbox<T> {
static private T slot = null;
static void put(T t)
{ slot = t; }
static T get()
{ return slot; }
}
$ javac -version
javac 1.6.0_21
$ javac SharedMailbox.java
SharedMailbox.java:2: non-static class T cannot be referenced from a static context
static private T slot = null;
^
SharedMailbox.java:4: non-static class T cannot be referenced from a static context
static void put(T t)
^
SharedMailbox.java:7: non-static class T cannot be referenced from a static context
static T get()
^
3 errors
$
This page last modified on 2006 January 24.