C# 12.0 기본 생성자 소개
추천 자료: ASP.NET Core 인증 및 권한 부여
기본 생성자
C# 12.0에서는 기본 생성자(Primary Constructor) 라는 새로운 기능이 도입되었습니다. 이는 클래스의 생성자 선언을 보다 간결하게 만들어주며, 불필요한 코드 중복을 줄이고 가독성을 높여줍니다.
기본 생성자는 클래스 선언의 일부로 정의되며, 매개변수를 직접 클래스 본문에서 사용할 수 있습니다. 이를 통해 readonly
멤버 변수를 보다 쉽게 초기화할 수 있으며, 불필요한 필드 선언을 줄일 수 있습니다.
C# 12.0 이전에는 다음과 같이 필드를 선언한 후, 생성자에서 명시적으로 초기화해야 했습니다.
class Employee
{
private readonly string _name;
private readonly int _age;
public Employee(string name, int age)
{
_name = name;
_age = age;
}
}
C# 12.0의 기본 생성자를 사용하면 더 간결하게 표현할 수 있습니다.
class Employee(string name, int age)
{
private readonly string _name = name;
private readonly int _age = age;
}
이렇게 하면 생성자 선언과 필드 초기화를 한 줄로 해결할 수 있습니다.
다음은 기본 생성자를 활용한 예제입니다.
코드: PrimaryConstructorDemo.cs
using System;
class Employee(string name, int age) // 기본 생성자 사용
{
private readonly string _name = name;
private readonly int _age = age;
public void Display() =>
Console.WriteLine($"이름: {_name}, 나이: {_age}");
}
class PrimaryConstructorDemo
{
static void Main()
{
Employee employee = new("홍길동", 21);
employee.Display();
}
}
이름: 홍길동, 나이: 21
C# 12.0의 기본 생성자는 필드 선언과 초기화를 한 줄로 처리하여 코드의 간결성을 높이고, 불필요한 필드를 제거하여 매개변수를 직접 활용할 수 있으며, 클래스의 생성자와 초기화 과정을 명확하게 보여줌으로써 가독성을 향상시키는 장점을 제공합니다.
추천 자료: .NET Blazor에 대해 알아보시겠어요? .NET Blazor 알아보기를 확인해보세요!