Sissejuhatus Java modifikaatoritesse

Nagu me kõik teame, on Java üks populaarseimaid programmeerimiskeeli maailmas. Sellele on viimase kahe aastakümne jooksul tuginenud miljardid seadmed. Java on kiire, töökindel, ohutu ja mitme platvormiga keel. Java töötab suvalises seadmes seni, kuni sellel seadmel on Java Runtime (JRE), mis teeb sellest mitmeplatvormilise, kiire ja töökindla keele. Juurdepääsu modifikaator on java omadus, mis muudab selle ohutuks kogu platvormi ulatuses. Java tagab programmeerijale klassi tasemel turvalisuse (kapseldamise ajal), kasutades juurdepääsu modifikaatori atribuuti. Selle raamatu kohaselt on klass javas objekti ehitamiseks plaan, mis teeb sellest programmi „ehitusploki”, kuna Java on objektorienteeritud keel. Juurdepääsu modifikaator täpsustab, kuidas iga klass pääseb juurde antud klassile ja selle väljadele, konstruktoritele ja meetoditele ning erinevatele pakettidele. Klassil, väljadel, konstruktoritel ja meetoditel võib olla üks neljast erinevast Java juurdepääsu modifikaatorist.

  • Privaatne
  • Avalik
  • Kaitstud
  • Vaikimisi - märksõna pole vaja.

Erinevad juurdepääsu muutjad Java-s

Järgmine tabel võtab kokku, kuidas saame Java-juurdepääsu modifikaatoreid programmis rakendada:

ModifikaatoridKlassPaketidAlamklassMaailm
PrivaatneYNNN
AvalikYYYY
KaitstudYYYN
VaikimisiYYNN

Kõigist Java juurdepääsu modifikaatoritest käsitleme järgmistes osades.

1) vaikimisi

Kui mõni klass, andmeliikmed ja muutuja deklareeritakse pöördumismoodustajaga mitte kirjutades, seatakse see vaikimisi juurdepääsu modifikaatoriks. Vaikepöördusmuundur tähendab, et kood, mis kuulub ükskõik millisesse klassi, pääseb kogu paketi piires juurde kogu programmile.

  • See juurdepääsu modifikaator töötab ainult sama paketi sees.
  • Mõnikord nimetatakse vaikimisi juurdepääsu modifikaatorit ka paketi juurdepääsu modifikaatoriks, kuna sellele pääseb juurde ainult sama paketi sees.
  • Alamklassid ei pääse juurde superklassi meetoditele, andmeliikmetele ja muutujatele (väljadele), kui need meetodid, andmeliikmed ja muutujad (väljad) on klassis tähistatud vaikimisi juurdepääsu modifikaatoriga, välja arvatud juhul, kui need alaklassid asuvad samas paketis kui superklass.

Näide nr 1:

//Java program to show the default modifier.
package Test;
//Where Class eduCBA is having Default access modifier as no access modifier is specified here
class eduCBA
(
void display ()
(
System.out.println("Hello World!");
)
)

Väljund:

Tere, Maailm!

Näide 2:

//Java program to show error while using class from different package with default modifier
package test2;
import test.*;
//This class check is having default access modifier
class Check
(
public static void main(String args())
(
//accessing class eduCBA from package test
eduCBA obj = new eduCBA();
obj.display();
)
)

Väljund:

Koosta ajaviga.

2) kaitstud

Süntaksit "kaitstud" kasutavad kasutajad siis, kui nad soovivad seda juurdepääsu modifikaatorit kasutada.

  • Sellele juurdepääsu modifikaatorile pääseb juurde ainult sama paketi või samades alamklassides erinevates klassides (kuid kasutajad peavad selle paketi importima sinna, kus see oli määratletud).
  • Kasutaja ei saa tähistada klassi ja liideseid kaitstud juurdepääsu modifikaatoriga. Kuid meetodeid ja välju saab kuulutada kaitstuks, kui meetodid ja väljad on liideses.

Näiteks:

//Java program to show to protected access modifier
package test;
//Class eduCBA
public class eduCBA
(
protected void display ()
(
System.out.println("Hello World!");
)
)
//Java program to show to protected modifier in same sub-classes of different packages
package test2;
import test.*;
//Class pro is subclass of eduCBA
class pro extends eduCBA
(
public static void main(String args())
(
pro obj = new pro();
obj.display();
)
)

Väljund:

Tere, Maailm!

3) avalik

Kasutaja saab deklareerida klassi, meetodi, konstruktori ja liidese avaliku juurdepääsu modifikaatoriga, millele pääseb juurde iga klassi, meetodi, konstruktori ja liidesega või erinevate pakettide sees.

  • Sellel juurdepääsu modifikaatoril on kõigi modifikaatorite puhul piiritu.
  • Kui mõni klass, meetod või pakett on tähistatud avaliku juurdepääsu modifikaatoriga, kus see on kõigile kättesaadav kõikjal programmi kaudu.
  • Avaliku juurdepääsu klassi, meetodite ulatus ei ole piiratud.

Näiteks: -

//Java program to show to public access modifier
package test;
public class eduCBA
(
public void display ()
(
System.out.println("Hello World!");
)
)
package test2;
import test.*;
class pub
(
public static void main (String args ())
(
eduCBA obj = new eduCBA ();
obj.display ();
)
)

Väljund:

Tere, Maailm!

4) Privaatne

Kui meetod või muutuja, mis on tähistatud kui „privaatsed” juurdepääsu modifikaatorid, pääseb kood samas klassis juurde ainult neile meetoditele ja muutujatele.

Kasutaja ei saa programmis kuulutada suvalist klassi, millel on „privaatne” juurdepääsu modifikaator. Kui kasutaja teeb seda ükskõik millise klassiga, siis muudab see klass sama paketi ühelegi teisele klassile ligipääsematuks, mis teeb klassist kasutamise, ehkki kasutaja saab klassisiseseid muutujaid ja meetodeid deklareerida privaatse juurdepääsu modifikaatori abil, nii et keegi ei saa neid muutujaid ja meetodeid kasutada.

Vahel segasid inimesed juurdepääsu privaatse ja kaitstud juurdepääsu modifikaatoriga, kuid nad mõlemad on erinevad.

Näiteks: -

//Program to show error while using a class from different packages with private modifier.
package test;
class eduCBA
(
private void display()
(
System.out.println("Hello World!");
)
)
class Check
(
public static void main (String args())
(
eduCBA obj = new eduCBA();
//make class check to access private method of another class eduCBA.
obj.display();
)
)

Väljund:

tõrge: kuvaril () on eduCBA obj.display () -l privaatne juurdepääs;

Järeldus

Java juurdepääsu modifikaator annab teile programmi täiendava eelise, kui teete selle avalikuks. Nagu me eespool uurinud, JAVA erinevat tüüpi juurdepääsu modifikaatorid ja nende spetsifikatsioonid.

Nii et pidage meeles iga kord, kui kasutate mõnda neist klassi- või liidesepöördusena, kuna need mitte ainult ei paku juurdepääsu, vaid ka alistavad need. Ehkki programmis on meetodi juurdepääsetavuse osas alati muret. Näiteks kui liidesele on superklassis määratud vaikimisi juurdepääsu modifikaator, siis on see lubatud üle kirjutada meetodi alaklassis kasutatavatele juurdepääsu modifikaatoritele.

Märkus. Klass sisaldab muutujaid, konstruktoreid, välju ja meetodeid ning liides sisaldab konkreetseid välju või meetodeid.

Soovitatavad artiklid

See on Java juurdepääsu muutmise juhend. Siin käsitleme javas juurdepääsu modifikaatorite erinevaid tüüpe ja nende spetsifikatsioone. Lisateavet leiate ka meie muudest soovitatud artiklitest -

  1. Objektorienteeritud programmeerimine Java-s
  2. Java-intervjuu küsimused
  3. Mis on Java sünkroonimine?
  4. Automaatkast ja jaoks Java keeles
  5. Juurdepääsu modifikaatorid C ++-is (tüübid)
  6. Hämmastav juhend pääsemoodulitele C # -s
  7. Juurdepääs modifikaatoritele PHP-s
  8. JRE vs JVM | 8 parimat erinevust (infograafika)

Kategooria: