유니티 프로그래밍 기초 : 접근 제어자

유니티 스크립트에서 흔히 쓰이는 접근 제어자에 대해서 알아보겠습니다.

접근 제어자는 public, private, protected가 있습니다. 접근 제어자는 변수, 함수, 클래스 등의 접근 범위를 정의하는데 쓰입니다.

 

1.public

public은 어디서든 접근이 가능한 접근 제어자입니다. A라는 클래스에서 만든 score가 30일때 B라는 클래스에서 A.score를 가져와서 30으로 불러올 수 있습니다.

또 public으로 선언한 변수나 함수는 유니티 스크립트가 아니라 유니티의 인스펙터 창에서 직접 사용하거나 수정도 가능합니다.

 

2.private

private는 어디서든 접근이 불가능한 접근 제어자입니다. 이는 public이 원본 데이터를 수정해서 예기치 못한 방향으로 동작하는 것을 원천 차단하여 무결성을 유지하는데 사용합니다.

public과 달리 private로 만들어진 요소들은 인스펙터 창에서 아무것도 나오지 않습니다. 해당 속성을 private로 유지하면서도 인스펙터 창에서 수정하고 싶으면 [SerializeField]를 사용해야 합니다

 

3.protected

protected는 해당 클래스를 상속받은 자식 클래스에서만 접근이 가능한 접근 제어자입니다.

‘character’라는 기본클래스에 ‘player’와 ‘enemy’가 상속받는 구조일 때

character에 ‘hp’라는 변수를 protected로 선언해놨다면 ‘player’나 ‘enemy’ 클래스에서도 character의 ‘hp’ 변수에 접근할 수 있습니다. 하지만 ‘stage’라는 외부 클래스에서는 ‘character’ 클래스에 접근은 할 수 있으나 그 안에 ‘hp’라는 변수에는 접근할 수 없습니다.

관계을 없는 외부 클래스로부터 접근을 차단하고 상속받는 클래스는 접근이 가능하게 하여 주요 기능의 재사용성을 높일 수 있습니다.

 

접근 제어자를 사용하는 것은 안정성과 유지 보수성을 높이는데 도움이 됩니다. 접근 제어자를 통해 데이터의 무결성과 코드의 재사용성을 높일 수 있습니다.

댓글 남기기