„Java“ prieigos modifikatoriai: viskas, ką reikia žinoti

Šis straipsnis padės jums suprasti, kas yra „Java“ prieigos modifikatoriai, ir sužinoti apie įvairius tipus, tokius kaip viešasis, privatusis, apsaugotas ir numatytasis.

„Java“ prieigos modifikatoriai naudojami klasių, kintamųjų metodų ir konstruktoriaus prieigos lygiams nurodyti.Tai padeda atnaujinti a vertę . Jie taip pat žinomi kaip matomumo redagavimas. Šio tinklaraščio pagalba padėsiu jums suprasti, kokia yra prieigos modifikatorių svarba .

Aš aptarsiu temas tokia tvarka:





Pradėkime nuo pirmosios temos.

Kas yra prieigos modifikatorius?



Galbūt susidūrėte visuomenės , privatus ir saugomi raktinius žodžius praktikuojant bet kurį , jie vadinami prieigos modifikatoriais.Kaip rodo pavadinimas, „Java“ prieigos modifikatoriai padeda apriboti klasės, konstruktoriaus, kintamojo, metodo ar duomenų nario taikymo sritį.

Prieigos modifikatorius galima atskirai nurodyti klasei, konstruktoriams,laukai ir metodai. Jie taip pat vadinami „Java“ prieigos specifikatoriai , bet teisingas pavadinimas yra „Java“ prieigos modifikatoriai .

Taigi, įsigilinkime į įvairius „Java“ prieigos modifikatorių tipus.



Prieigos modifikatoriaus tipai

Yra keturi prieigos modifikatorių raktiniai žodžiai ir jie yra:

  • Numatytasis prieigos modifikatorius
  • Privačios prieigos modifikatorius
  • Visuomenės prieigos modifikatorius
  • Apsaugotas prieigos modifikatorius

Leiskite mums išsamiai sužinoti apie kiekvieną iš jų.

Numatytasis prieigos modifikatorius

Kai tam tikrai klasei, metodui ar duomenų nariui nėra nurodytas prieigos modifikatorius, sakoma, kad jis turi numatytas prieiga redaguoti.

„Java“ duomenų struktūros ir algoritmai

Datos nariai, arba metodai, kurie nėra deklaruoti naudojant įėjimo modifikatorius, turės numatytąjį modifikatorių, prieinamą tik panašaus paketo viduje. Taireiškia, kad jūs aiškiai nedeklaruojate klasės, lauko, metodo ir pan. prieigos modifikatoriaus.

Pavyzdys:

paketas p1 // „Class Course“ turi numatytąjį prieigos modifikatorių „Course“ {void display () {System.out.println ('Hello World!')}}

Toliau pereikime prie kito tipo, privačios prieigos modifikatoriaus.

Privačios prieigos modifikatorius

  • Metodai ar duomenų nariai, kurie yra paskelbti privačiais, yra prieinami tik toje klasėje, kurioje jie yra deklaruoti.
  • Aukščiausio lygio klasės ar sąsaja negali būti paskelbtos privačiomis, atsižvelgiant į tai
    • Privatus reiškia „ tiesiog matomas uždarančios klasės viduje '.
    • Saugoma reiškia „ j turi būti pastebimas uždarymo klasės ir bet kokių poklasių viduje '.
  • Jei klasė turiįprivatus konstruktorius tada jūs negalite sukurti tos klasės objekto iš klasės.
  • Klasės negali būti pažymėtos privačios prieigos modifikatorius .
  • Klasės žymėjimas privačios prieigos modifikatoriumi reikštų, kad jokia kita klasė negalėtų į ją patekti. Tai paprastai reiškia, kad jūs negalite panaudoti klasės jokiai vaizduotės daliai. Tokiu būdu privačios prieigos modifikatorius neatsižvelgia į klases.

Pastaba : Klasės ar sąsajos negalima paskelbti privačia.

Sintaksė:

viešosios klasės laikrodis {private long time = 0}

Pažvelkite į pavyzdį, kad gautumėte aiškią idėją apie šį privačios prieigos modifikatorių.

Pavyzdys:

paketas p klasė A {private void display () {System.out.println ('Edureka')}} B klasė {public static void main (String args []) {A obj = new A () // bando pasiekti privatų kitos klasės obj.display ()}} metodas

Šios programos rezultatas yra:

klaida: ekranas () turi privačią prieigą A

obj.display ()

kaip atspausdinti masyvą php

Tikiuosi, kad jūs, vaikinai, aišku, turėdami privačios prieigos modifikatorių. Toliau pereikime prie kito tipo, viešosios prieigos modifikatoriaus.

Visuomenės prieigos modifikatorius

  • Viešosios prieigos modifikatorius nurodomas naudojant raktinį žodį visuomenės.
  • Viešosios prieigos modifikatorius turi plačią taikymo sritį tarp visų kitų prieigos modifikatorių.
  • , metodai ar duomenų nariai, kurie deklaruojami kaip visuomenės yra prieinama bet kur programa. Viešųjų duomenų narių apimtis nėra ribojama.

Sintaksė:

paketas edureka.co public class PublicClassDemo {// Čia nepaminėjau jokio modifikatoriaus, todėl jis veikia kaip numatytasis modifikatorius public int myMethod (int x) {return x}}

Pažvelkite į pavyzdį, kad gautumėte aiškią idėją apie šį viešosios prieigos modifikatorių.

Pavyzdys:

paketas p1 public class A {public void display () {System.out.println ('edureka!')}}
paketas p2 importuoti p1. * B klasė {public static void main (String args []) {A obj = new A obj.display ()}}

Rezultatas: edureka!

Tai viskas apie „Java“ viešosios prieigos modifikatorius.

Pereikime prie kitų „Java“ prieigos modifikatorių, saugomų prieigos modifikatorių.

Apsaugotas prieigos modifikatorius

  • Apsaugotas prieigos modifikatorius nurodomas naudojant raktinį žodį saugomi .
  • Metodai ar duomenų nariai, paskelbti saugomais, yra prieinami tame pačiame pakete arba paketuose kitame pakete.
  • Su saugomais nariais galima susipažinti tik vaikų arba išvestinėse klasėse.

Sintaksė:

paketas packageFourProtected viešoji klasė ProtectedClassFour {protected int myMethod (int a) {return a}}

Pažvelkime į pavyzdį.

Pavyzdys:

konvertuoti dvigubą į sveiką skaičių Java
spackage p1 // A klasės viešoji A klasė {protected void display () {System.out.println ('Java Certification Training')}}
paketas p2 importas p1. * // visų klasių importavimas pakete p1 // B klasė yra A klasės poklasis, tęsiasi A | {public static void main (String args []) {B obj = new B () obj.display ()}}

Išvestis - „Java“ prieigos modifikatoriai - „Edureka“

Tai yra viskas, ką jums reikia žinoti apie skirtingus metodus, esančius „Java“ prieigos modifikatoriuose. Pereikime prie kitos temos.

Prieigos modifikatoriai su metodo viršenybe

Tokiu atveju viršijate bet kurį metodą, poklasyje deklaruojamas metodas neturi būti ribojantis.

Pažvelkite į žemiau pateiktą pavyzdį.

A klasė {protected void msg () {System.out.println ('Hello java')}} public class Simple pratęsia A {void msg () {System.out.println ('Hello java')} // CTError public static void main (String args []) {Paprastas obj = naujas Paprastas () obj.msg ()}}

Numatytasis modifikatorius yra labiau ribojantis nei apsaugotas. Štai kodėl yra kompiliavimo laiko klaida.

Prieigos kontrolė ir paveldėjimas

  • Jei tokiu atveju sukursite kažkokios klasės poklasį, tada toje poklasio metoduose negali būti priskirti mažiau prieinami prieigos modifikatoriai nei viršutiniame.
  • Pavyzdžiui, jei metodas yra superklase visuomenės tada jis turi būti viešas ir poklasyje. Jei metodas superklase yra saugoma, tada jis turi būti arba saugomas, arba viešas nurodytame poklasyje.
  • Metodai, paskelbti privačiais, nėra paveldimi.

Taip pateksime į šio straipsnio pabaigą, kur sužinojome „Java“ modifikatoriuose. Tikiuosi, kad jums aišku viskas, kas su jumis buvo pasidalinta šioje pamokoje.

Įsitikinkite, kad praktikuojate kuo daugiau ir grąžinkite savo patirtį.

Jei jums pasirodė, kad šis straipsnis yra „„ Java “prieigos modifikatoriai“, patikrinkite patikima internetinė mokymosi įmonė, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą, pasklido po visą pasaulį. Mes esame čia, kad padėtume jums kiekviename jūsų kelionės žingsnyje, kad taptume be šių „Java“ interviu klausimų, mes parengėme programą, skirtą studentams ir specialistams, norintiems būti „Java“ kūrėjais. Kursas sukurtas tam, kad galėtumėte pradėti žaisti „Java“ programavimą ir išmokyti pagrindinių bei pažangių „Java“ koncepcijų kartu su įvairiomis „Java“ sistemomis, tokiomis kaip „Hibernate & Spring“.

Jei kyla klausimų, nedvejodami užduokite visus klausimus komentarų skiltyje „Prieigos modifikatoriai„ Java ““ ir mūsų komanda mielai atsakys.