¿Cuál es la diferencia entre las variables miembro de Java y las variables locales?

Extraído de JavaGuide (Github star 134k star! "Java Learning + Interview Guide" cubre el conocimiento básico que la mayoría de los programadores de Java necesitan dominar)
Variables miembro frente a variables locales

  • Forma gramatical : desde la perspectiva de la forma gramatical, las variables miembro pertenecen a la clase, mientras que las variables locales son variables definidas en bloques de código o métodos o parámetros de métodos; las variables miembro se pueden modificar mediante modificadores como , y las variables locales publicno se privatepueden modificar staticpor modificadores de control de acceso y ; sin embargo, las variables miembro y las variables locales pueden ser modificadas por .staticfinal
  • Método de almacenamiento : Del método de almacenamiento de variables en memoria, si se staticmodifica la variable miembro con , entonces la variable miembro pertenece a la clase, si no se staticmodifica, la variable miembro pertenece a la instancia. Mientras que los objetos existen en la memoria del montón, las variables locales existen en la memoria de la pila.
  • Tiempo de vida : desde la perspectiva del tiempo de vida de las variables en la memoria, las variables miembro son parte del objeto y existen con la creación del objeto, mientras que las variables locales se generan automáticamente con la llamada al método y mueren al final de la llamada al método. .
  • Valor predeterminado : A juzgar por si la variable tiene un valor predeterminado, si la variable miembro no tiene asignado un valor inicial, se reemplazará automáticamente por el valor predeterminado del tipo

Supongo que te gusta

Origin blog.csdn.net/qq_34337272/article/details/130749084
Recomendado
Clasificación