Static

MSKim·2023년 2월 23일
0

Java

목록 보기
4/19

static 메소드는 static한 필드(속성)만 사용할 수 있다.
static 변수는 인스턴스(객체)가 아닌 클래스에 귀속된다.
따라서, 인스턴스가 여러개 생성돼도 static 변수는 딱 하나만 있다.
변수 중에서 공통 속성(클래스 변수)에 static 을 붙인다.

static 메서드는 객체 생성 없이 호출할 수 있다.
클래스 이름으로 호출.
Ex) 클래스 메서드 Math.random()

메서드를 만들었을 때 스태틱을 붙일 지 말지 어떻게 결정하나?
=> 인스턴스 변수를 사용하지 않을 때 사용.

스태틱 메서드와 인스턴스 메서드의 차이는 인스턴스 변수의 사용 여부

인스턴스 메서드는 인스턴스(객체)를 new로 생성하고 호출 할 수 있다.
인스턴스 메서드는 인스턴스 변수로 작업하기 때문에 객체가 필요하다
인스턴스 생성은 곧 인스턴스 변수 생성이다

class Plus {
	int a, b;	// 인스턴스 변수 iv
	int add(){	// 인스턴스 메서드
		return a + b;
	}
    
    // 클래스메서드(static 메서드)
    static int add(int a, int b){	// 지역변수 lv 
		return a + b;
	}
}

void main(){
	Plus plus = new Plus();	// 인스턴스 생성
	plus.a = 10;
	plus.b = 20;
	plus.add();	// 인스턴스 메서드 호출

	plus.add(10, 20);	// 클래스 메서드 호출
}
profile
Today I Learned

0개의 댓글