מחלקה יורשת יכולה לגשת לכל הרכיבים הציבוריים של מחלקת הבסיס שלה, כמו כל מחלקה אחרת.
החלקים הפרטיים של מחלקת הבסיס חסומים גם בפני המחלקה הנגזרת, כמו בפני כל מחלקה אחרת.
בדוגמה הקודמת המחלקה Derived יכולה הייתה לגשת ולהשתמש במתודות PrintBase ובמאפיין BaseNum הציבוריים אולם היא מנועה מלגשת לתכונה m_BaseNum של מחלקת הבסיס בגלל היותה מוגדרת כפרטית.
כאשר מדובר על הרשאות גישה למתודות ותכונות אין למחלקה הנגזרת אין שום פריבילגיה על מחלקות אחרות.
המחלקה הנגזרת יכולה לגשת למחלקת הבסיס שלה בצורה ישירה או באמצעות השימוש במילה השמורה base .
את המחלקה הנגזרת בדוגמה הקודמת (InheritanceSample01) ניתן היה לכתוב כך:
1 : class Derived : Base
2 : {
3 : privateint derivedNum;
4 : public Derived()
5 : {
6 : derivedNum = 1;
7 : }
8 : public Derived(int num1, int num2)
9 : {
10 : base.BaseNum = num1;
11 : derivedNum = num2;
12 : }
13 : publicvoid PrintDerived()
14 : {
15 : base.PrintBase();
16 : Console.WriteLine(derivedNum);
17 : }
18 : }
בשורה 10 ובשורה 15 מודגם השימוש במילה השמורה base.
ניתן לומר שממשק המחלקה הנגזרת (רכיבי המחלקה הציבוריים הנגישים מחוץ למחלקה) כוללים את כל החלקים הציבוריים של מחלקת הבסיס בצירוף החלקים הציבוריים של המחלקה הנגזרת.
כלל זה מדגיש עובדה חשובה - המתכנת אשר משתמש במחלקה יכול להתעלם מהעובדה שהיא יורשת מחלקה אחרת (שגם היא, בתורה, יכולה לרשת מחלקה וכו'). המחלקה מהווה מעין "קופסא שחורה" אשר מציעה פעילויות למשתמש בה, מבלי שהוא ייאלץ להתעמק במבנה הפנימי שלה.
רשימת אתחול (Init List) סדר הבנייה של האובייקט הוא מהבסיס לנגזרת, דהיינו, מחלקת הבסיס נוצרת קודם ורק לאחר מכן נוצרת המחלקה הנגזרת. ולכן, כאשר נוצר אובייקט מהמחלקה הנגזרת, מופעל ה- ctor של המחלקה הנגזרת, אשר מפעיל את ה- ctor של המחלקה הבסיסית.
כברירת מחדל הבנאי של המחלקה הנגזרת מפעיל את בנאי ברירת המחדל של מחלקת הבסיס.
ניתן לראות זאת מהפלט של תוכנית הדוגמה הבאה (InheritanceSample02):
1 : class Base
2 : {
3 : public Base()
4 : {
5 : Console.WriteLine("Base Ctor");
6 : }
7 : }
8 : class Derived : Base
9 : {
10 : public Derived()
11 : {
12 : Console.WriteLine("Derived Ctor");
13 : }
14 : }
15 : class Program
16 : {
17 : staticvoid Main(string[] args)
18 : {
19 : Derived d = new Derived();
20 : }
21 : }
פלט:
מהפלט ניתן להבחין בבירור שבנאי מחלקת הבסיס הורץ לפני שהבנאי של המחלקה הנגזרת נכנס לפעולה.