BLOG
C#

C# 2. static 키워드


Jan. 22, 2022, 11:17 p.m.



static 키워드는 C#에서 정적으로 사용할 수 있는, 객체 인스턴스를 만들지 않아도 사용할 수 있도록 하는 키워드 입니다.


1. static 메소드


어떤 메소드를 static 메소드로 만들면 그 메소드는 속해있는 클래스의 인스턴스가 없어도 사용 가능한 것이죠.

아래와 같이 static 키워드를 넣습니다.

public class hello {

    public static void func() {

    }
}

hello.func();

위와 같이 static 키워드를 이용해 선언한 func() 메소드는 hello의 인스턴스가 없어도 바로 사용 가능합니다.


2. static 클래스


클래스 자체를 static으로 선언할 수 있습니다. 대신 속해있는 모든 메소드를 static으로 지정해주어야 합니다.

또한 static 클래스는 인스턴스를 만들 수 없으므로 static 생성자를 따로 가집니다.

public static class hello {

    static hello {
        //초기화
    }
    public static void func1() {

    }
    public static void func2() {

    }
    ...
}

3. static 변수


마지막으로 변수에도 static을 지정해줄 수 있습니다. static이 아닌 변수는 일반적으로 인스턴스가 생성되면서 초기화 되기 때문에 같은 클래스여도 인스턴스별로 다른 메모리를 점유하기 때문에 값이 다를 수 있습니다.

그러나 static 변수는 처음 클래스가 사용될 때 초기화 되면 클래스에서 동일한 메모리를 점유하게 되어 인스턴스가 달라도 동일한 값을 유지합니다.

public static class hello {

    public static int var;

    static hello {
        var = 1;
    }
    public static void func1() {

    }
    public static void func2() {

    }
    ...
}

이상으로 static 키워드에 대해서 알아보았습니다.

static



Search