정적 생성자 (static constructor)
정적 생성자(static constructor)는 기본 생성자에 static 예약어를 붙인 경우로 클래스에 단 한개만 존재할 수 있고,
주로 정적 맴버를 초기화하는 기능을 한다.
class Sample
{
static Sample()
{
Console.WriteLine("static constructor 생성");
}
}
특징으로는 다음과 같이 있는데
#1. 매개변수를 포함할 수 없다.
#2. 클래스의 어떤 맴버든 최초로 접근하는 시점에 단 한번만 실행된다.
#3. 인스턴스 생성자를 통해 객체가 만들어지는 시점이 되면 다른 코드보다 우선적으로 실행된다.
다음은 생성 예제이다.
class Person
{
public string name;
public Person(string _name)
{
Console.WriteLine("constructor 생성");
this.name = _name;
}
static Person()
{
Console.WriteLine("static constructor 생성");
}
}
class Program
{
static void Main(string[] args)
{
Person person = new Person("sample1");
Console.WriteLine("--------------");
Person person2 = new Person("sample2");
}
}
'C# > Basic' 카테고리의 다른 글
getters & setters (0) | 2021.02.07 |
---|---|
구조체 (struct) (0) | 2021.02.06 |
Environment.NewLine (0) | 2020.12.06 |
for, foreach (0) | 2020.05.10 |
Ternary operator (삼항연산자) (0) | 2020.05.10 |
댓글
이 글 공유하기
다른 글
-
getters & setters
getters & setters
2021.02.07 -
구조체 (struct)
구조체 (struct)
2021.02.06 -
Environment.NewLine
Environment.NewLine
2020.12.06 -
for, foreach
for, foreach
2020.05.10