C++

[class] C++ - Access Specifiers (접근지정자)

1,854

목차

  1. Access Specifiers (접근지정자)

 

Access Specifiers (접근지정자)

[예제]

 

class Hz {  // 클래스

   public:    // 접근지정자

       int x;  // 클래스 멤버

}

 


[개념]

 

1. 

앞서 많이 봐온, public 키워드 같은 걸 말함.

 

2.

'클래스의 멤버 (속성 + 메서드)에 대한 '접근 수준 / 가시성' 결정.에 사용.

 


[종류]

 

public

모든 클래스에서 코드에 접근 가능.

즉, 클래스 밖에서도 클래스 멤버에 접근 가능 의미.


private

같은 클래스 내에서만 코드에 접근 가능. (기본값. 예제2 참고)

즉, 클래스 밖에서는 클래스 멤버에 접근 불가 의미.


protected

같은 클래스 또는 그 상속된 클래스 내에서만 코드에 접근 가능.

즉, 클래스 밖에서는 접근 불가하나 상속 클래스에선 접근 가능.

 


[예제1] public vs. private 차이.

 

#include <iostream>

using namespace std;


class Hz {

    public: // 외부 클래스 접근 허용.

        int x;

    private: // 외부 클래스 접근 차단.

        int y;

};


int main() {

  Hz my; // 객체 생성

  my.x = 3;  // 접근 가능

  my.y = 4;  // 접근 불가. (에러 유발)

  return 0;

}

 


[예제2] 접근지정자 미지정 시, 기본적으로 private 적용.

 

class MyClass {

  int x;   // Private 속성

  int y;   // Private 속성

};




분류 제목
class C++ - OOP (객체 지향 프로그래밍)
class C++ - Class (클래스) / Object (객체)
class C++ - Class Methods (클래스 메서드)
class C++ - Constructors (생성자)
class C++ - Access Specifiers (접근지정자)
class C++ - Encapsulation (캡슐화)
class C++ - Inheritance (상속)
class C++ - Polymorphism (다형성)
class C++ - Files (파일) - 파일생성/파일읽기/파일쓰기
class C++ - Exceptions (= Try...Catch..) - 에러 제어
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱닷컴 PC버전 로그인