frontend bug -- inner classes

Bryce McKinlay bryce@waitaki.otago.ac.nz
Thu Jan 31 16:29:00 GMT 2002


Adam Megacz wrote:
>This should not compile, yet it does. Note that x is not static, yet
>main() is.
>>public class t {
> int x = 0;
> public static void main() {
> new Thread() {
> public void run() {
> x = 5;
> }
> }.start();
> }
>}
>>javac gives this error:
>>t.java:6: non-static variable x cannot be referenced from a static context
> x = 5;
> ^
>
I have a fix for this (check the java-patches archives) but it causes 
some other problems - specifically, anonymous classes should never be 
ACC_STATIC, even though we need to treat it as such when declared in a 
static context.
Sometime soon I'll take another look at it.
regards
Bryce.


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /