This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Because the compiler cannot associate "i" with "10" at compile time; it can only do this when the variable is initialized when declared. This has something to do with how the source code is parsed and all.