C#

클래스와 static 키워드

게임만드는학생 2025. 1. 19. 20:53

우선 static 이라는 키워드에 대해 알아보자. 

 

static 키워드는 클래스 멤버변수나 멤버함수에 사용할 수 있다. 

이 키워드가 붙은 멤버는 객체 각각에 있는 것이 아닌 클래스 공유 자원이다. 

즉, 해당 클래스로 만들어진 모든 객체가 공유하는 것이다. 

 

class Person
{
	static int count=0;
    int hp;
    
    static Person CreatePerson()
    {
    	
    }
}

다음과 같이 만들 수 있으며 static 함수에서 멤버변수나 함수에는 접근이 불가하다. 그렇기에 hp 변수에는 접근할 수 없다. 

그리고 이런 static 변수나 함수는 클래스이름으로 접근한다. 

Person.count , Person.CreatePerson() 방식이다. 

 

이런 static은 어디에 쓰일까?

 

예를 들어, Person의 객체들에게 순서대로 아이디를 부여하고 싶을 때, 생성 시 마다 count를 1씩 증가시키며 그 값을 id로 부여할 수 있을 것이다. 

또, 유니티에서는 게임에 관련된 유틸리티 클래스를 만들거나 싱글톤패턴을 구현할 때도 사용할 수 있다. 

 

클래스도 static으로 만들 수 있는데 이 경우에, new 키워드로 객체를 생성할 수 없으며, 클래스이름으로만 접근이 가능하다. 

 

 

'C#' 카테고리의 다른 글

배열, List, Dictionary  (0) 2025.01.19
클래스의 특징  (0) 2025.01.19
클래스 기초  (0) 2025.01.19
함수  (0) 2025.01.18
반복문  (0) 2025.01.18