English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
객체 지향 프로그래밍에서는 부모 클래스의 특성을 상속할 수 있습니다. 부모 클래스는 기본 클래스로 불리며, 자식 클래스는 상속된 클래스로 불립니다. 상속된 클래스는 데이터 멤버와 기본 클래스의 멤버 함수를 상속할 수 있습니다.
데이터 멤버가 공개적이면, 상속된 클래스, 동일한 클래스, 그리고 해당 클래스 외부에서 접근할 수 있습니다. 데이터 멤버가 보호적이면, 상속된 클래스와 동일한 클래스만 접근할 수 있으며, 클래스 외부에서는 접근할 수 없습니다. 데이터 멤버가 비공개적이면, 동일한 클래스만 접근할 수 있습니다.
이것은 C ++언어에서의 상속 예제
#include <bits/stdc++.h> using namespace std; class Base { public: int a; protected: int b; private: int c; }; class Derived : public Base { public: int x; }; int main() { Derived d; d.a = ; 10; d.x = ; 20; cout << "Derived class data member value : " << d.x << endl; cout << "Base class data member value : " << d.a << endl; return 0; }
출력 결과
Derived class data member value : 20 Base class data member value : 10
위의 프로그램에서, 상속된 클래스는 기본 클래스와 그 데이터 멤버를 상속받습니다. 상속된 클래스 객체 d를 생성하고, 기본 클래스 및 상속된 클래스 a와 x의 데이터 멤버를 호출하려고 합니다. 그러나 보호되고 비공개인 변수 b와 c에 접근할 수 없기 때문에, 접근 시 오류가 발생합니다.
Derived d; d.a = ; 10; d.x = ; 20;