Mainokset

Java tarjoaa useita pääsy määritteet voit asettaa pääsy tasot luokat, muuttujat, menetelmiä, ja rakentajat. Neljä pääsytasoa ovat −

  • näkyvissä paketissa, oletusarvo. Muokkaajia ei tarvita.
  • näkyy vain luokalle (yksityinen).
  • näkyvä maailmalle (yleisölle).
  • näkyy pakkauksessa ja kaikissa alaluokissa (suojattu).,

Default Access Modifier – Ei Avainsanan

Default access modifier tarkoittaa, että meidän ei nimenomaisesti julistaa access modifier luokan, kenttä, menetelmä, jne.

muuttuja tai metodi on julistettu ilman access control muokkaaja on saatavilla muita luokan samassa paketissa. Rajapinnan kentät ovat implisiittisesti julkisia staattisia finaaleja ja rajapinnan menetelmät ovat oletusarvoisesti julkisia.,

Esimerkki

Muuttujat ja menetelmiä, voidaan todeta ilman määritteet, kuten seuraavat esimerkit −

String version = "1.5.1";boolean processOrder() { return true;}

Yksityinen Access Modifier – Yksityinen

Menetelmät, muuttujat, ja rakentajat, jotka ovat ilmoitettu yksityisiä voi käyttää vain sisällä julistaa-luokka itse.

Private access modifier on rajoittavin käyttöoikeustaso. Luokka ja rajapinnat eivät voi olla yksityisiä.

yksityisiksi ilmoitettuja muuttujia voi käyttää luokan ulkopuolella, jos luokassa on julkisia getter-menetelmiä.,

yksityisen modifioijan käyttäminen on tärkein tapa, jolla objekti koteloituu ja piilottaa tietoja ulkomaailmasta.

Esimerkki

seuraava luokka käyttää yksityisiä access control −

Tässä muodossa muuttuja Logger luokka on oma, joten ei ole mitään keinoa muut luokat hakea tai asettaa sen arvo suoraan.

Joten, jotta tämä muuttuja on käytettävissä ulkomaailmaan, meillä on määritelty kaksi julkista menetelmää: getFormat(), joka palauttaa arvon muodossa, ja setFormat(Merkkijono), joka määrittää sen arvo.,

Public Access Modifier-Public

a class, method, constructor, interface, etc. julkiseksi julistettuja voi käyttää mistä tahansa muusta luokasta. Siksi julkiseen luokkaan kuuluville kentille, menetelmille, lohkoille pääsee mistä tahansa Java-universumiin kuuluvasta luokasta.

Kuitenkin, jos public class yritämme päästä on eri paketti, sitten public class silti on tuotu. Luokkaperinnön vuoksi kaikki luokan julkiset menetelmät ja muuttujat periytyvät sen alaluokilla.,

Esimerkki

seuraava toiminto käyttää julkisen access control −

public static void main(String arguments) { // ...}

main() menetelmä, kun hakemus on julkinen. Muuten Javan tulkki (kuten java) ei voinut kutsua sitä luokan johtajaksi.

Protected Access Modifier – Suojattu

Muuttujat, menetelmiä, ja rakentajat, jotka on julistettu suojattu yliluokka voidaan käyttää ainoastaan alaluokkien muissa paketti tai luokan sisällä, paketti suojattu jäsenten luokan.

suojattua käyttöoikeusmuunnosta ei voida soveltaa luokkaan ja rajapintoihin., Menetelmiä, kentät voidaan katsoa suojattu, kuitenkin menetelmät ja kentät käyttöliittymä voi olla julisti suojattu.

suojattu pääsy antaa alaluokalle mahdollisuuden käyttää auttajamenetelmää tai muuttujaa estäen samalla siihen liittymätöntä luokkaa yrittämästä käyttää sitä.

Esimerkki

seuraavat vanhemman luokan käyttää protected access control, jotta sen lapsen luokan ohittaa openSpeaker() menetelmä −

class AudioPlayer { protected boolean openSpeaker(Speaker sp) { // implementation details }}class StreamingAudioPlayer extends AudioPlayer { boolean openSpeaker(Speaker sp) { // implementation details }}

Tänne, jos me määrittelemme openSpeaker() menetelmä kuin oma, niin se ei olisi käytettävissä mistä tahansa muita luokan muut kuin AudioPlayer., Jos määrittelisimme sen julkiseksi, se tulisi kaikkien ulkopuolisten ulottuville. Mutta tarkoituksemme on paljastaa tämä menetelmä sen alaluokkaan vain, siksi olemme käyttäneet suojattu modifier.

Access Control ja Perintö

seuraavat säännöt perinyt menetelmät ovat täytäntöön, −

  • Menetelmiä julisti yleisölle yliluokka täytyy myös olla julkinen, kaikki alaluokkaan.

  • Menetelmiä julisti suojattu yliluokka on joko suojattava tai julkisen alaluokkaan; ne eivät voi olla yksityisiä.,

  • yksityiseksi tunnustetut menetelmät eivät periydy lainkaan, joten niille ei ole sääntöä.

java_modifier_types.htm
Mainokset