You asked if final variables are stored differently in memory. Ilja said no, they're not; the difference is that since a final variable never changes,
Java can secretly make a copy of the final variable and store it in the local class object. This makes it look as though the local class can access the final local variable, but really, it only accesses that copy which is made at the moment the object is constructed.