This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
in first case since final object is assigned it's value at the declarion time hence compiler knows its values is <=127 ,thus allowing to compile. in second case since final varible is not assigned at the declaration time,hence compiler can not be known about the later assigned value. thus compiler is not sure wheather value is <=127,thus not allowing to compile.