더북(TheBook)

42.3 필드에 public을 붙여 외부 클래스에 공개하기

이 책에서는 클래스의 구성 요소인 필드는 무조건 private으로 선언합니다. 필드도 속성처럼 public으로 해도 전혀 상관은 없습니다. public으로 구성한 코드를 한 번 살펴보겠습니다.

> class Point
. {
.     public int x;                     //필드: public 필드
.     public int y;
.
.     public Point(int x, int y)        //생성자
.     {
.         this.x = x;
.         this.y = y;
.     }
.
.     public void MoveBy(int dx, int dy) //메서드
.     {
.         x += dx;
.         y += dy;
.     }
. }
>
> Point point = new Point(0, 0); //좌표 기본값 설정
> point.MoveBy(100, 200);        //100, 200으로 이동
> Console.WriteLine($"X : {point.x}, Y : {point.y}");
X : 100, Y : 200

이처럼 public 속성 대신에 public 필드를 사용해도 프로그래밍에는 전혀 지장이 없습니다. 필드는 클래스의 부품 역할을 하는데, 이왕이면 꽁꽁 숨기길 권장하므로 private으로 선언하는 것뿐입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.