>Java >java지도 시간 >Java의 지역 변수와 전역 변수에 대한 간략한 소개

Java의 지역 변수와 전역 변수에 대한 간략한 소개

黄舟
黄舟원래의
2017-09-22 11:33:521658검색

이 글은 주로 Java의 지역 변수와 전역 변수에 대한 의미와 생존 시간 및 생성 위치를 소개합니다.

이 글에서는 자바의 지역 변수와 전역 변수를 다음과 같이 소개합니다.

1. 지역 변수:

지역 변수의 정의: 메소드에 정의된 변수는 모두 지역 변수입니다(메인 메소드이기도 합니다) 따라서 기본 메서드에 정의된 변수도 지역 변수입니다.

생존 시간: 지역 변수의 생존 시간은 메소드의 생존 시간과 일치합니다. 지역 변수를 선언하고 초기화하기 위해 메소드가 호출될 때까지 지역 변수가 생성되고 메모리 공간이 할당됩니다. 호출이 끝나면 로컬 변수가 종료됩니다.

초기화 필요 여부: 로컬 변수는 사용하기 전에 초기화해야 합니다. 시스템은 기본적으로 로컬 변수에 대한 데이터 작업을 초기화하지 않습니다. 컴파일러에 보고됩니다. 선언이 초기화되지 않았지만 사용되지 않은 경우 컴파일은 오류를 보고하지 않습니다(사용하기 전에 로컬 변수를 초기화해야 함)

생성 위치: 로컬 변수는 스택 메모리에 생성됩니다.

2 , 전역 변수:

2.1 비정적 전역 변수:

비정적 전역 변수 정의: 비정적 전역 변수는 클래스에 설정됩니다. , 이는 클래스의 멤버 변수 또는 멤버 속성입니다. 부분(또는 객체의 일부)

수명: 비정적 전역 변수는 힙 메모리에 로드되고 선언 초기화와 함께 생성되며 소멸과 함께 소멸됩니다.

초기화해야 합니까? 전역 변수는 모두 초기화할 필요가 없습니다. 시스템은 기본적으로 데이터 유형에 따라 기본 할당을 수행하지만 초기화하는 것이 좋습니다.

생성 위치: 비정적 전역 변수 개체이므로 힙 메모리에 생성됩니다. 멤버 변수는 개체의 일부입니다.

2.2 정적 전역 변수:

정적 전역 변수 정의 : 정적 클래스 멤버 변수

수명: 정적 전역 변수는 클래스의 바이트코드를 따릅니다. 파일이 로드될 때 파일이 로드되고, 바이트코드 파일이 사라지면 사라집니다. 클래스의 객체보다 생존 시간이 깁니다.
초기화 여부: 모든 전역 변수는 초기화할 필요가 없으며 정적 변수의 경우에도 마찬가지입니다. 시스템은 자동으로 데이터 유형에 기본값을 할당하지만 선언 시 변수를 초기화하는 것이 좋습니다. 생성 위치: 정적 변수는 메모리에 존재하므로 정적 전역 변수도 힙 메모리에 존재합니다.

요약

위 내용은 Java의 지역 변수와 전역 변수에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.