프로그래밍에서 멤버 변수, 전역 변수, 지역 변수는 각기 다른 범위와 역할을 가지는 변수 유형입니다.
1. 멤버 변수 (Member Variable)
- 정의: 객체지향 프로그래밍(OOP)에서 클래스의 속성을 나타내는 변수로, 클래스 내에서 선언됩니다.
- 특징:
- 클래스의 인스턴스(객체)에 종속되어 있음.
- 객체가 생성될 때 메모리에 할당되고, 객체가 파괴될 때 해제됨.
- 접근제한자(
private
,protected
,public
)에 따라 접근 가능 여부가 달라짐.
- 사용 예 (Java 예시):
class Car {
String color; // 멤버 변수
int speed; // 멤버 변수
}
Car myCar = new Car();
myCar.color = "Red"; // 멤버 변수 접근
2. 전역 변수 (Global Variable)
- 정의: 프로그램 전체에서 접근 가능한 변수로, 함수나 클래스 외부에서 선언됩니다.
- 특징:
- 프로그램이 실행되는 동안 메모리에 유지됨.
- 모든 함수와 코드 블록에서 접근 가능.
- 지나치게 사용하면 코드의 복잡성을 증가시킬 수 있음(의존성이 높아짐).
- 사용 예 (Python 예시):
counter = 0 # 전역 변수
def increment():
global counter
counter += 1
increment()
print(counter) # 출력: 1
3. 지역 변수 (Local Variable)
- 정의: 특정 함수나 블록 내에서 선언되고, 해당 범위에서만 접근 가능한 변수입니다.
- 특징:
- 함수가 호출될 때 생성되고, 함수가 종료되면 소멸됨.
- 다른 함수나 블록에서는 접근할 수 없음.
- 사용 예 (Python 예시):
def calculate():
result = 10 # 지역 변수
print(result)
calculate()
# print(result) # 오류: result는 지역 변수라 함수 외부에서 접근 불가
멤버 변수, 전역 변수, 지역 변수의 차이
구분 | 범위 | 생명주기 | 사용 위치 |
---|---|---|---|
멤버 변수 | 클래스 내부 | 객체 생성 시 할당, 객체 소멸 시 해제 | 클래스 내 |
전역 변수 | 프로그램 전체 | 프로그램 시작 시 생성, 종료 시 해제 | 함수 외부 |
지역 변수 | 함수/블록 내부 | 함수/블록 실행 시 생성, 종료 시 해제 | 함수/블록 내부 |
728x90
'Software Tech > Spring (feat.JAVA)' 카테고리의 다른 글
Servlet & JSP에 대하여 (1) | 2024.12.26 |
---|---|
MVC 패턴 (Model-View-Controller) (2) | 2024.11.19 |
자식클래스가 부모클래스를 인스턴스로 받을 수 없는 이유 (0) | 2024.11.19 |
Singleton Pattern (싱글톤 패턴) (0) | 2024.10.21 |
[Java] 자바 기초 학습 내용 정리 (0) | 2024.10.09 |