본문 바로가기
BackEnd/Java

[Java] static, instance 변수/메서드 정리

by ryuneng 2025. 1. 15.
반응형

# 목적

: static, instance 변수/메서드에 대한 개념 정리

* 인스턴스 멤버 : 인스턴스 변수, 인스턴스 메서드
* 클래스 멤버 : 클래스(static) 변수, 클래스(static) 메서드




1. 변수(Variable)란?

: 하나의 데이터를 저장할 수 있는 공간

변수 구분

  instance (객체, iv) static (cv) local (lv)
명칭 인스턴스 변수 클래스변수, 공유변수 로컬변수, 지역변수
선언위치 클래스 영역 클래스 영역 메서드 영역, 초기화 블럭 내부
사용 객체 생성 후 사용 가능 언제나 사용 가능 해당 영역 내에서만 유효
* instance 변수는 개별 속성, static 변수는 공통 속성일 때 사용




2. 메서드(Method)란?

: 명령문 집합

메서드 정의 방법

public static void main(String[] args) {
//		반환타입 메서드이름 (타입 변수명, 타입 변수명, ...)	- 선언부
//		{
//			메서드 호출 시 수행될 코드						- 구현부
//		}

		// --- ex)
		int add (int a, int b)							// - ex)선언부 (반환할 게 없을 때는 선언부 앞에 void 붙이기)
		{	// 여기서 a, b는 매개변수 (매개변수는 0~n개 입력 가능)
			int result = a + b;
			return result; // 호출한 메서드로 결과 반환    // - ex)구현부
		}	// 출력값은 0~1개밖에 안되기 때문에 배열을 사용하거나 객체로 묶어야 함
	}

instance / static 메서드

  instance 메서드 static 메서드
차이 인스턴스 변수(iv) 사용o 인스턴스 변수(iv) 사용 x
매개변수 입력x 입력o
사용법 객체 생성 후, '참조변수.메서드이름()'으로 호출 '클래스명.메서드이름'으로 호출

* 참고 : 유튜브 [자바의 정석 기초]


 


< 해당 글은 velog에서 옮겨온 글로, 가독성이 좋지 않을 수 있는 점 양해 부탁드립니다. >

🔗 velog 버전 보기 : https://velog.io/@ryuneng2/Java-static-instance-기초정리