검수요청.png검수요청.png

프라이빗

위키원
이동: 둘러보기, 검색

프라이빗(private)는 객체 지향 프로그래밍(OOP)에서 같은 클래스 내에서만 접근 가능하도록 허용하는 제어자이다. 접근제어자의 종류 중 하나이다.

필요성[편집]

프라이빗(private)을 자바 프로그래머들이 멤버변수나 메소드 앞에 붙여서 사용하는 주된 이유는 추후에 변수나 메소드의 내용이 변경될 가능성이 있기 때문이다. 프라이빗을 붙이면 접근 자체가 불가능하기 때문에 다른 클래스를 참조하는 경우도 없다. 즉 변수나 메소드의 내용을 변경해도 다른 클래스들에 아무런 영향이 없다는 의미이다. [1]

특징[편집]

프라이빗(private)은 가장 폐쇄적인 접근 제어자로, private으로 선언된 멤버변수, 메소드는 해당 클래스 내부의 메소드에서만 사용 가능하다. [1] 프라이빗을 사용하여 선언된 클래스 멤버는 외부엔 공개되지않으며, 외부에서는 직접 접근이 불가능하다. 즉, Java에서는 프라이빗 멤버에 직접 접근할 수 없으며, 해당 객체의 퍼블릭(public) 메소드를 통해서만 접근이 가능하다는 의미이다. 따라서 프라이빗 멤버는 퍼블릭 인터페이스를 직접 구성하지 않고, 클래스 내부의 세부적인 동작을 구현하는데 사용된다. [2]

프라이빗(private) 접근 영역 구조
  • 예제

1. 오류 발생 X [3]

public class Test {
   // test 변수는 오직 Test 클래스에서만 접근 가능
   private String test;
   // getTest() 메소드는 오직 Test 클래스에서만 접근 가능
   private String getTest() {
      return this.test;
   }
}

2. 오류 발생 O [4]

public class Test_A {
   private String test = "test"; 
}
public class Test_B {
   public static void main(String[] args) {
       Test_A test_a = new Test_A();
       // 프라이빗이 선언된 변수 사용 시 오류 발생
       test_a.test = "JAVA"; 
   }
}

각주[편집]

  1. 1.0 1.1 수정자(modifier)〉, 《개인사이트》, 2015-03-09
  2. 접근 제어자〉, 《TCPSCHOOL.com》
  3. 접근제어자〉, 《WikiDocs(위키독스)》, 2017-09-11
  4. 접근 제어자의 종류와 사용 이유〉, 《심플한 IT, 프로그래밍 블로그》, 2019-07-13

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 프라이빗 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.