BLOG
C#

C# 3. 클래스 객체 초기화


Jan. 23, 2022, 11:06 p.m.



C#같은 객체지향 프로그래밍 언어에서는 클래스의 객체(인스턴스)를 만들어서 사용합니다. 이것을 객체를 초기화한다고 하죠. 이번 포스트에서는 C#에서 객체를 초기화하는 여러가지 방법에 대해서 알아보도록 하겠습니다.

1. 객체 초기화


아래의 클래스를 한번 볼까요?

public class hello {

    public int a;
    public int b;

    public void func() {
        ///Do something
    }

}

위의 클래스 객체를 초기화 할때는 아래와 같이 선언합니다.

instance = new hello();

그런데 만약 초기화 하면서 변수 a, b에 값을 넣고 싶다면 어떻게 해야할까요?


2. 필드를 같이 초기화


그럴때는 중괄호 {} 를 이용해서 클래스를 초기화 함과 동시에 여러 명령어를 넣을 수 있습니다. 아래와 같이요!

instance = new hello() {a = 11;, b = 22; };

좋은 기능입니다. 그러나 중괄호를 쓰는 것은 직관적이지 않아 보입니다.


3. 생성자를 통한 초기화


생성자를 사용하면 훨씬 더 직관적으로 클래스를 초기화 할 수 있습니다.

클래스를 선언할 때 클래스명과 같은 이름의 메소드를 만들어 주면 이것이 생성자가 됩니다. 이때 반환형은 없습니다.

public class hello {

    public int a;
    public int b;

    public hello(int first, int second) {
        a = first;
        b = second;
    }

    public void func() {
        ///Do something
    }

}

이렇게 생성자를 선언하여 받는 두가지 인수를 각각 a, b에 저장되도록 하였습니다. 생성자를 선언하였으므로 이제 아래와 같이 초기화 할 수도 있게 되었네요!

instance = new hello(11, 22);

이렇게 C#에서 객체를 초기화하는 방법들을 알아보았습니다.



Search