Asignación de memoria y vida de variables.

Mi pregunta o más bien las preguntas son las siguientes:

1) ¿Dónde reside la variable estática? Algunos artículos dicen que residen en el montón y otros dicen que en el área perm gen con la definición de clase, ya que son atributos de clase. Entiendo que la segunda opción podría ser correcta porque es un atributo de clase.
2) ¿Dónde reside la variable final y cuál es su vida si: a) Es una variable de instancia de tipo primitivo b) Es una variable local de un método de tipo primitivo c) Es una variable de instancia de tipo referencia b) Es un local Variable de un método de referencia de tipo.
3) ¿Dónde se almacenan las variables locales de referencia si son locales?
4) En el caso de las matrices, hay alguna diferencia en la asignación de memoria, ya que son variables de instancia o variables de subproceso local.

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta