Như bạn có thể thấy, các đối tượng của lớp
CRectangle
và
CTriangle
chứa tất
cả các thành viên của
CPolygon
, đó là
width
,
height
và
set_values()
.
Từ khoá
protected
tương tự với
private
, sự khác biệt duy nhất chỉ xảy ra khi
thừa kế các lớp. Khi chúng ta thừa kế một lớp, các thành viên
protected
của
lớp cơ sở có thể được dùng bởi các thành viên khác của lớp được thừa kế còn
các thành viên
private
thì không. Vì chúng ta muốn rằng
width
và
height
có
thể được tính toán bởi các thành viên của các lớp được thừa kế
CRectangle
và
CTriangle
chứ không chỉ bởi các thành viên của
CPolygon
, chúng ta đã sử
dụng từ khoá
protected
thay vì
private
.
Chúng ta có thể tổng kết lại các kiểu truy xuất khác nhau tuỳ theo ai truy xuất
chúng:
Truy xuất
public
protected
private
Các thành viên trong cùng lớp
có
có
có
Các thành viên của các lớp thừa kế
có
có
không
Không phải là thành viên
có