my dog learned polymorphism
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Static variables and forward reference Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Customer Requirements for Developers this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Static variables and forward reference" Watch "Static variables and forward reference" New topic
Author

Static variables and forward reference

Larry Olson
Ranch Hand

Joined: Feb 03, 2009
Posts: 142


In the code snippet above, how come X could be referred in the static block, even though it is only declared afterwards? I thought all static code is executed sequentially from top to bottom. How does the compiler know about X at //1 ?

Thanks.
Ankit Garg
Sheriff

Joined: Aug 03, 2008
Posts: 9377
    
  19

You can forward reference variables to assign value to them. You cannot forward reference to read their values. So your code is legal but this code would not be legal


SCJP 6 | SCWCD 5 | Javaranch SCJP FAQ | SCWCD Links
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Static variables and forward reference
 
jQuery in Action, 3rd edition