السلام عليكم

استفساراتي تتعلق بلغة #C ( سي شارب ) تحديداً في موضوع الكلاس ( Class ) وتحديداً اكثر في مسألة اشتقاق كلاس.

استفسار 1 :-
نعرف انه لا يمكن اشتقاق كلاس public من كلاس internal وهنا حالتين(مثالين) (هذا اذا كان كلامي صحيح وعلى حسب ما فهمته من بعض الدروس):
الحالة الاولى:
نعرف انه عند عدم وضع كلمة internal قبل الكلاس فإن البرنامج يفهم انها من نوع internal (البرنامج يفهم انها من نوع internal عند عدم كتابتها قبل الكلاس وهي تعتبر default في البرنامج) وايضا بامكاننا وضعها.

كود:
internal class aa { }
public class aa1 : aa { }
في الحالة الاولى الكلام غير صحيح لانه عندما وضعنا internal قبل الكلاس اشتغل البرنامج .. طيب نشوف الحالة الثانية.
الحالة الثانية:

كود:
class aa { }
public class aa1 : aa { }
في هذه الحالة عندما حذفنا كلمة internal اعطانا البرنامج خطأ.
طيب مالفرق بين الحالة الاولى والحالة الثانية ؟؟؟؟؟؟



استفسار 2 :-
نعرف انه يمكن اشتقاق كلاس internal من كلاس internal واعيد واكرر ( البرنامج يفهم انها من نوع internal عند عدم كتابتها قبل الكلاس وهي تعتبر default في البرنامج) طيب نشوف المثال التالي:

كود:
class aa { }
internal class aa1 : aa { }
في هذا المثال يعطيني البرنامج خطأ لماذا ؟؟؟؟؟