본문 바로가기

Knowledge/Interview

정적 메서드(Static Method)

인스턴스 메서드

  • 특정 객체의 상태를 사용하거나 변경하는 메서드이다. 이 메서드를 호출하기 위해서는 클래스의 인스턴스가 필요하다.
public class MyClass {
    public void instanceMethod() {
        System.out.println("This is an instance method.");
    }
}
MyClass obj = new MyClass();
obj.instanceMethod(); // 객체를 통해 호출

정적 메서드

  • 클래스에 속하지만 객체에 속하지 않는 메서드이다. 즉, 객체를 생성하지 않고도 클래스 이름으로 직접 호출할 수 있다.
  • 특징:
    • 클래스 로딩 시 메모리에 할당된다.
    • 인스턴스의 상태와 관계없이 동작한다.
    • 클래스 이름으로 호출할 수 있다.
    • 정적 메서드는 객체를 생성하지 않고도 호출할 수 있어, 클래스와 관련된 작업을 처리할 때 유용하다.
public class MyClass {
    public static void staticMethod() {
        System.out.println("This is a static method.");
    }
}
MyClass.staticMethod(); // 객체를 생성하지 않고 호출

static 키워드의 역할

클래스에 속하는 필드나 메서드를 정의할 때 사용된다. 인스턴스가 아니라 클래스 자체에 속하므로, 클래스 이름으로 직접 접근할 수 있다.

정적 메서드와 인스턴스 메서드의 차이점

정적 메서드는 클래스 레벨에서 호출되며, 객체의 상태를 참조하거나 변경할 수 없다.
인스턴스 메서드는 객체의 상태를 참조하거나 변경할 수 있으며, 객체가 생성되어야 호출할 수 있다.

'Knowledge > Interview' 카테고리의 다른 글

HTTP 응답 코드  (0) 2024.08.14
디자인패턴(Design Pattern)  (0) 2024.08.14
Spring Boot 애플리케이션 기본 구조  (0) 2024.08.14