Why there is no access modifier named "Visible"? -


सी ओ ++, जावा या सी # जैसी भाषाओं में, सार्वजनिक , निजी , संरक्षित । कुछ भाषाओं में अन्य संशोधक जैसे आंतरिक है वे सभी निर्दिष्ट करते हैं कि कौन निश्चित चर या विधि का उपयोग कर सकता है। और चर के लिए, यह शब्द पहुंच दोनों को पढ़ने और संशोधित करने की क्षमता का मतलब है। लेकिन वेरिएबल तक पहुंचने का सबसे आम परिदृश्य, इसे दूसरों के लिए सार्वजनिक रूप से दिखाई दे रहा है, लेकिन क्लास के भीतर संशोधित करने की क्षमता रखते हुए। और यह गटर सेटर आदि का उपयोग करते हुए कई रणनीतिओं के माध्यम से प्राप्त किया जाता है।

मेरा प्रश्न यह है कि हमारे पास सबसे सामान्य परिदृश्य के लिए एक एक्सेस मॉडिफायर क्यों नहीं है, जिसका नाम visible ? फिर इसके साथ चिह्नित चर बाहरी कक्षाओं या विधियों द्वारा पढ़ा जा सकता है। लेकिन केवल वर्ग में ही संशोधित किया जा सकता है।

आपका सुझाव कार्यान्वयन विवरण को प्रोत्साहित करेगा कैसे सार्वजनिक करने के लिए वर्ग के भीतर राज्य का प्रतिनिधित्व किया जाता है।

एक स्तर के indirection - गुणों का उपयोग करके - आप इसके कार्यान्वयन से एक प्रकार के सार्वजनिक एपीआई को अलग करने की अनुमति देता है। यह महान लाभ का हो सकता है:

  • आप कब एक मान की गणना कर सकते हैं, उदा। आलसी कुछ डेटा की आबादी
  • आप एक मूल्य संग्रहीत कैसे बदल सकते हैं, उदा।

    मैं भाषा के लिए सब कुछ कर रहा हूँ जिससे केवल पढ़ने योग्य राज्य को उजागर करना आसान हो जाता है

  • (उदाहरण के तौर पर सी # 6 केवल पढ़ने के लिए ही स्वचालित रूप से कार्यान्वित गुणों के साथ कर रहा है), लेकिन मैं खेतों को अधिक दृश्यमान बनने के लिए प्रोत्साहित नहीं करता।

Comments

Popular posts from this blog

Java - Error: no suitable method found for add(int, java.lang.String) -

java - JPA TypedQuery: Parameter value element did not match expected type -

c++ - static template member variable has internal linkage but is not defined -