আমি সি # এর বিভিন্ন দিকের ডিফল্ট দৃশ্যমানতার জন্য একটি রেফারেন্স সন্ধান করার চেষ্টা করছি। শ্রেণীর ধরণ, ক্ষেত্র, পদ্ধতি, এনাম ইত্যাদি
কেউ কি তাদের ডিফল্ট দৃশ্যমানতার (উদাহরণস্বরূপ, পূর্বনির্ধারিত কোনও সংশোধক) এর সাথে এর একটি তালিকা সরবরাহ করতে পারে?
আমি সি # এর বিভিন্ন দিকের ডিফল্ট দৃশ্যমানতার জন্য একটি রেফারেন্স সন্ধান করার চেষ্টা করছি। শ্রেণীর ধরণ, ক্ষেত্র, পদ্ধতি, এনাম ইত্যাদি
কেউ কি তাদের ডিফল্ট দৃশ্যমানতার (উদাহরণস্বরূপ, পূর্বনির্ধারিত কোনও সংশোধক) এর সাথে এর একটি তালিকা সরবরাহ করতে পারে?
উত্তর:
আপনি যে সমস্ত তথ্যের সন্ধান করছেন সেগুলি এখানে এবং এখানে পাওয়া যাবে (ধন্যবাদ রিড কোপসি ):
প্রথম লিঙ্ক থেকে:
শ্রেণি এবং স্ট্রাক্ট যা সরাসরি কোনও নেমস্পেসের মধ্যে ঘোষিত হয় (অন্য কথায়, যেগুলি অন্যান্য শ্রেণি বা স্ট্রাক্টের মধ্যে বাসা বাঁধে না) পাবলিক বা অভ্যন্তরীণ হতে পারে। কোনও অ্যাক্সেস মডিফায়ার নির্দিষ্ট না করা থাকলে অভ্যন্তরীণ ডিফল্ট ।
...
নেস্টেড ক্লাস এবং স্ট্রাক্ট সহ শ্রেণীর সদস্য এবং স্ট্রাক্ট সদস্যদের অ্যাক্সেস স্তরটি ডিফল্টরূপে ব্যক্তিগত ।
...
ইন্টারফেস অভ্যন্তরীণ অ্যাক্সেস ডিফল্ট ।
...
প্রতিনিধিরা ক্লাস এবং স্ট্রকের মতো আচরণ করে। ডিফল্টরূপে, যখন কোনও নামস্থানটিতে সরাসরি ঘোষিত করা হয় তখন এগুলি অভ্যন্তরীণ অ্যাক্সেস এবং নেস্টেড অবস্থায় ব্যক্তিগত অ্যাক্সেস রয়েছে ।
দ্বিতীয় লিঙ্ক থেকে:
শীর্ষ স্তরের প্রকারগুলি , যা অন্য ধরণের নেস্টেড হয় না, কেবলমাত্র অভ্যন্তরীণ বা জনসাধারণের অ্যাক্সেসযোগ্যতা পেতে পারে। এই ধরনের জন্য ডিফল্ট অভিগম্যতা অভ্যন্তরীণ ব্যবহারের জন্য ।
এবং নেস্টেড ধরণের জন্য:
ডিফল্ট সদস্যদের অ্যাক্সেসযোগ্যতার সদস্যগণ ---------- ---------------------------- সর্বজনীন ক্লাস প্রাইভেট ইন্টারফেস পাবলিক কাঠামো বেসরকারী
Public
। Enum
সদস্যরাও আছেন Public
। আপনার ক্ষেত্রে কেবল সুস্পষ্ট সুযোগ ব্যবহার করার জন্য সম্ভবত কম বিভ্রান্তিকর কারণ সম্ভাবনা বেশি তাই এটি কোনও সময়ে সি # বিকাশকারীদের দ্বারা অনুবাদ বা পড়া হবে। দুর্ভাগ্যক্রমে, vb.net কোড কোড জেনারেশন এটি আপনার জন্য করে না।
এমএসডিএন থেকে:
শীর্ষ-স্তরের প্রকারগুলি , যা অন্য ধরণের নেস্টেড হয় না, কেবল সেগুলি internal
বা public
অ্যাক্সেসযোগ্যতা পেতে পারে। এই ধরণের জন্য ডিফল্ট অ্যাক্সেসযোগ্যতা internal
।
উত্স: অ্যাক্সেসিবিলিটি স্তর (সি # রেফারেন্স) (ডিসেম্বর 6 ম , 2017)
ডিফল্টরূপে, কোনও শ্রেণীর অ্যাক্সেস মডিফায়ার internal
। এর অর্থ হ'ল, একই সমাবেশের মধ্যে একটি শ্রেণি অ্যাক্সেসযোগ্য। তবে আমরা যদি চাই যে ক্লাসটি অন্যান্য সমাবেশ থেকে অ্যাক্সেস করা যায় তবে তা জনসাধারণকে প্রকাশ করতে হবে।
[assembly:InternalsVisibleTo("Friend1b")]
ডিফল্টরূপে হয় private
। যতক্ষণ না তারা নেস্টেড করছি, ক্লাস হয় internal
।
enum members are private by default, so to use them outside the enum we should declare them as public
। আপনি দয়া করে ব্যাখ্যা করতে পারেন যে বইটি আপনার কথার সাথে কেন বিরোধ করে? ধন্যবাদ।