728x90

file 은 하나의 파일 내에서 접근 권한을 갖게 하는 것으로 class 가 다르더라도 같은 파일이라면 접근이 가능합니다.

file class SampleData
{
    public int Id { get; set; }
    public string Name { get; set; }

    public override string ToString()
    {
        return $"{Id}: {Name}";
    }
}

public class PublicData
{
    public string GetSample()
    {
        var localData = new SampleData { Id = 1, Name = "Test" };
        string data = localData.ToString();
        return data;
    }
}

file로 정의하게 되면 그 파일 내에서만 유효하며 다른 파일에서는 file로 정의된 class를 알 수 없습니다.

그러므로 다른 파일이 똑같은 이름으로 public class 를 만들더라도 충돌 나지 않습니다.

 

728x90
Posted by kjun.kr
,