파일 범위 (File-scoped types)
.NET 7에서 새롭게 생긴 파일 범위 기능은 클래스를 .cs 파일 기준으로 제한하여 사용할 수 있도록 제공하는 키워드입니다. 이로 인해 이 키워드가 선언된 물리 파일 안에서만 이 클래스에 접근할 수 있습니다.
아래 FileTest.cs 파일과 AnotherFileTest.cs 파일에 작성된 내용들을 살펴봅시다.
// FileTest.cs
namespace James
{
public class FileTest
{
...
}
}
// AnotherFileTest.cs
namespace James
{
file class FileTest
{
...
}
public class JamesTest
{
public void Test()
{
// 현재 AnotherFileTest.cs 파일에 존재하는
// file 키워드 FileTest 인스턴스가 생성됩니다.
FileTest file = new();
file.Test();
}
}
}
FileTest 클래스가 이미 존재 하지만 물리적인 파일 위치만 다르다면 file 키워드를 통해 동일한 이름의 클래스를 같은 네임스페이스 안에서 공존 시킬 수도 있습니다.
아래 링크는 본문의 내용을 작성하기 위해 참고한 Munib-Butt님의 글 원문입니다.
https://www.c-sharpcorner.com/article/new-file-scope-feature-in-net-7/
제가 준비한 내용은 여기까지 입니다.
읽어주셔서 감사합니다.