What's the Method Area in a Java Virtual Machine Implementation?
The method area is a logical area of memory which stores information about loaded types.
(source: Inside a Java Virtual Machine instance, information about loaded types is stored in a logical area of memory called method area. P 124 )
But whereas non-final class variables are stored as part of the data forthe type that declares them, final class variables are stored as part of the datafor any type that uses them.
The data for objects is stored in the heap.(Proof: The data that must be kept on the heap for each array is array's length.P 144)
Objects data is kept on the heap and methods data is store in the Java Stack.