정적 메소드(static method)와 인스턴스 메소드(instance method)의 차이는 메소드가 호출되는 방식과 그 메소드가 접근할 수 있는 데이터에 있습니다. 두 가지의 주요 차이점을 아래에 설명합니다.
1. 정적 메소드 (Static Method)
- 클래스에 속함: 정적 메소드는 클래스 자체에 속해 있으며, 특정 객체(인스턴스)를 생성하지 않고도 호출할 수 있습니다.
- static 키워드 사용: 정적 메소드를 정의할 때 static 키워드를 사용합니다.
- 인스턴스 데이터에 접근 불가: 정적 메소드는 클래스의 인스턴스 변수(객체의 필드)에 접근할 수 없습니다. 대신, 클래스 변수(정적 변수)에만 접근할 수 있습니다.
- 사용 예시: 정적 메소드는 주로 공통적인 동작을 처리할 때 사용됩니다. 예를 들어, 유틸리티 함수들이 정적 메소드로 구현됩니다.
2. 인스턴스 메소드 (Instance Method)
- 인스턴스에 속함: 인스턴스 메소드는 클래스의 인스턴스(객체)에 속해 있으며, 객체가 생성된 후 그 객체를 통해 호출됩니다.
- static 키워드 없음: 인스턴스 메소드는 static 키워드를 사용하지 않습니다.
- 인스턴스 데이터에 접근 가능: 인스턴스 메소드는 객체의 인스턴스 변수에 접근할 수 있으며, 그 객체의 상태를 변경하거나 사용할 수 있습니다.
- 사용 예시: 인스턴스 메소드는 객체의 상태나 동작에 의존하는 메소드들을 구현할 때 사용됩니다.
어떻게 보면 당연한 말인데...아직까지 저 용어를 들었을 떄, 이러이러해서 저런 특징을 가지고 있지 않을까? 싶은 사고가 되지는 않는다..
'C#' 카테고리의 다른 글
[이것이 C#이다] Thread.sleep (0) | 2024.09.21 |
---|---|
[이것이 C#이다] Thread abort, start, join (0) | 2024.09.21 |
[이것이 C#이다] 멀티 프로세스 vs 멀티 스레드 관련 깨알지식ㅍ (0) | 2024.09.21 |