وصول متغير عضو خاص من فئة باستخدام موضوعها (المثال)

StackOverflow https://stackoverflow.com/questions/346127

  •  19-08-2019
  •  | 
  •  

سؤال

وهنا هو رمز قصاصة VB.NET

Public Class OOPDemo

    Private _strtString as String

    Public Function Func(obj as OOPDemo) as boolean
      obj._strString = "I can set value to private member using a object"

    End Function

End Class

واعتقد اننا لا يمكن الوصول إلى أعضاء الخاص باستخدام الكائن، ولكن ربما CLR يتيح لنا أن نفعل ذلك. وهذا يعني أن معدلات الوصول تستند على النوع وليس على سبيل المثال من هذا النوع. لقد سمعت أيضا أن ج ++ كما يسمح ذلك ..

وأي التخمينات ما يمكن أن يكون السبب في ذلك؟

وتحرير:

وأعتقد أن هذا الخط من الرابط MSDN التي قدمها RoBorg يفسر هذا السلوك "مدونة في النوع الذي يعلن عنصرا الخاص، بما في ذلك رمز ضمن أنواع الواردة، ويمكن الوصول إلى العنصر"

هل كانت مفيدة؟

المحلول

وسؤالك هو مربكة جدا ولكن اعتقد انني فهمت ذلك على النحو التالي: "لماذا لا يمكنني الوصول إلى حالة أخرى (صفي) الصورة المتغيرات الخاصة؟"

وكنت على حق - في جميع لغات OOP لقد استعملت يمكنك الوصول إلى المتغيرات خاصة من حالات أخرى، وتحديدا بسبب أذونات الوصول تستند إلى حيث هو رمز، بدلا من أي كائن المثال انه ينتمي '<. / P>

قد يكون من الصعب تنفيذ المنشئات نسخة أو مشغلي المساواة خلاف ذلك.

نصائح أخرى

وهنا المقطع حول مستويات الوصول في MSDN .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top