पैकेज के लिए दृश्यमान है। डिफ़ॉल्ट। किसी भी संशोधक की जरूरत नहीं है।
केवल कक्षा के लिए दृश्यमान ( निजी )।
विश्व के लिए दृश्यमान ( सार्वजनिक )।
पैकेज और सभी उपवर्ग ( संरक्षित ) के लिए दृश्यमान ।
चर और तरीकों को बिना किसी संशोधन के घोषित किया जा सकता है। डिफ़ॉल्ट उदाहरण:
String name = "john";
public int age(){
return age;
}
निजी एक्सेस संशोधक - निजी:
निजी घोषित किए गए तरीके, चर और कंस्ट्रक्टर केवल घोषित वर्ग के भीतर ही एक्सेस किए जा सकते हैं। निजी एक्सेस संशोधक सबसे अधिक प्रतिबंधात्मक पहुंच स्तर है। कक्षा और इंटरफेस निजी नहीं हो सकते।
सार्वजनिक घोषित तरीके विधियाँ कक्षा में मौजूद होने पर, जिन्हें निजी घोषित किया जाता है, उन्हें कक्षा के बाहर पहुँचा जा सकता है।
निजी संशोधक का उपयोग करना मुख्य तरीका है कि कोई वस्तु अपने आप को घेर लेती है और बाहरी दुनिया से डेटा छुपाती है।
उदाहरण:
Public class Details{
private String name;
public void setName(String n){
this.name = n;
}
public String getName(){
return this.name;
}
}
सार्वजनिक पहुंच संशोधक - सार्वजनिक:
सार्वजनिक घोषित की गई एक कक्षा, विधि, निर्माता, इंटरफ़ेस आदि को किसी अन्य वर्ग से एक्सेस किया जा सकता है। इसलिए, सार्वजनिक वर्ग के अंदर घोषित किए गए फ़ील्ड, तरीके, ब्लॉक जावा ब्रह्मांड से संबंधित किसी भी वर्ग से एक्सेस किए जा सकते हैं।
हालाँकि, यदि हम जिस सार्वजनिक वर्ग तक पहुँचने का प्रयास कर रहे हैं, वह एक अलग पैकेज में है, तो सार्वजनिक वर्ग को अभी भी आयात करने की आवश्यकता है।
वर्ग की विरासत के कारण, किसी वर्ग के सभी सार्वजनिक तरीके और चर इसके उपवर्गों को विरासत में मिलते हैं।
उदाहरण:
public void cal(){
}
संरक्षित पहुँच संशोधक - संरक्षित:
वैरिएबल, तरीके और निर्माता जो सुपरक्लास में संरक्षित घोषित किए जाते हैं, उन्हें केवल उपवर्गों द्वारा किसी अन्य पैकेज या संरक्षित वर्ग के पैकेज के भीतर किसी भी वर्ग तक पहुँचा जा सकता है।
संरक्षित एक्सेस संशोधक वर्ग और इंटरफेस पर लागू नहीं किया जा सकता है। तरीके, फ़ील्ड्स को संरक्षित घोषित किया जा सकता है, हालांकि एक इंटरफ़ेस में तरीकों और फ़ील्ड्स को संरक्षित घोषित नहीं किया जा सकता है।
संरक्षित उपयोग उपवर्ग को सहायक विधि या चर का उपयोग करने का मौका देता है, जबकि एक असंबंधित वर्ग को इसका उपयोग करने की कोशिश करने से रोकता है।
class Van{
protected boolean speed(){
}
}
class Car{
boolean speed(){
}
}
private
पैकेज के भीतर अन्य वर्गों से छुपाता है।public
पैकेज के बाहर कक्षाओं के लिए उजागर करता है।protected
का एक संस्करण हैpublic
केवल उपवर्गों तक ही सीमित।