AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Java 변수 유형 설명

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발

대상자

  • Java 초보 개발자 및 중급 개발자
  • 난이도: 중간 수준 (기초 개념부터 실무 적용까지 포함)

핵심 요약

  • 인스턴스 변수는 클래스 내에서 선언되며, 각 객체가 독립적인 복사본을 가짐.
  • 로컬 변수는 메서드 내부에서 선언되며, 메서드 실행 중만 유효.
  • 정적 메서드static 키워드로 선언되며, 클래스 레벨에서 접근 가능.
  • 정적 변수static 키워드로 선언되며, 모든 인스턴스 간 공유됨.

섹션별 세부 요약

1. 인스턴스 변수 (INSTANCE_VARIABLES)

  • 클래스 내부에서 메서드 외부에 선언됨.
  • 각 객체가 독립적인 값을 유지.
  • 기본값으로 초기화됨 (예: int는 0, Stringnull).
  • 접근 제어자(private, public)를 사용할 수 있음.
  • 예제: public class Person { String name; int age; }

2. 로컬 변수 (LOCAL_VARIABLES)

  • 메서드, 생성자, 또는 블록 내부에서 선언됨.
  • 메서드 실행 중만 유효하며, 메서드 외부에서 접근 불가.
  • 예제: void displayMessage() { String message = "Hello"; }
  • message 변수는 displayMessage() 메서드 내부에서만 사용 가능.

3. 정적 메서드 (STATIC_METHOD)

  • static 키워드로 선언됨.
  • 객체 생성 없이 클래스 이름으로 직접 호출 가능.
  • 정적 변수와 정적 메서드만 직접 접근 가능.
  • 예제: public class Utility { static void greet() { ... } }
  • 호출 예: Utility.greet();

4. 정적 변수 (STATIC_VARIABLES)

  • static 키워드로 선언됨.
  • 모든 인스턴스 간 공유되며, 클래스 로딩 시 한 번만 초기화됨.
  • 메모리의 method area에 저장됨.
  • 예제: public class Demo { static int x = 10; }
  • 접근 예: Demo.x

결론

  • 인스턴스 변수는 객체별 상태를 저장할 때 사용하며, 정적 변수는 모든 객체가 공유하는 데이터를 관리할 때 활용.
  • 로컬 변수는 메서드 내부에서 일시적으로 사용되며, 메서드 종료 시 소멸됨.
  • 정적 메서드는 유틸리티 함수로 자주 사용되며, this 키워드 사용 불가.
  • Oracle Docs(https://docs.oracle.com/)를 참고하여 공식 문서와 정확한 구문 확인.