본문 바로가기

Java

정적메소드와 인스턴스

 정적 메소드는 this 레퍼런스가 없다

(인스턴스 메소드는 각각의 인스턴스마다 메모리를 할당하여 어떤 객체에서 불러왔는지 구분할 필요가 있기때문에 this가 필요하고 정적 메소드는 클래스로 선언된 모든객체에 의해 공유되기때문에 객체를 구분할 필요가없음 )

– 정적 메소드는 오버라이딩이 불가하다.

– 정적메소드는 인스턴스 멤버를 호출할 수 없다.

 

메모리 할당 순서는

클래스가 메모리 할당 -> 정적 멤버변수 -> main 메소드-> 객체 생성후 -> 인스턴스 멤버 변수

캡처

api 중에서 Math 라는 클래스는 수학관련된 정적 메소드로 정의 되어있음 왜냐면 매번 인스턴스를 생성하는 것이 번거롭기 때문에 클래스로 바로 접근해서 속성이나 메소드를 사용하는 것이 메모리를 보다 효율적으로 사용할수 있는 방법이라서 ~


'Java' 카테고리의 다른 글

스택과 힙 메모리  (0) 2016.04.29
패키지 - Pakege  (0) 2016.04.29
메소드 오버라이딩  (0) 2016.04.29
업캐스팅과 다운캐스팅  (0) 2016.04.29
추상클래스  (0) 2016.04.29