I've mostly seen this subject in relation to instance variables, where one variable would be declared and have the value of an uncreated second variable, resulting in a compiler error. e.g.
int myVar1 = myVar2; //This is the forward reference
int myVar2 = 10; //as myVar2 is undeclared
The simple solution is to rewrite these lines so that myVar2 is declared and assigned first:
int myVar2 = 10;
int myVar1 = myVar2;
There are ways to write code that does make forward references that fool the compiler, but that's another story. It's covered by Bill Venners in relation to object instance variable initialization at
http://www.artima.com/designtechniques/initialization.html HTH

Adam