Hvad er beskyttet i Java, og hvordan implementeres det?



Denne artikel om Beskyttet i Java hjælper dig med at forstå, hvad der er beskyttet nøgleord, og hvordan det kan hjælpe med at indkapsle din kode og forhindre misbrug.

Java leverer et sæt nøgleord, der kaldes Adgang modifikatorer som hjælper os med at indstille synligheden af ​​en klasse,interface, variabel, datamedlem, metode, konstruktør osv. Der er 4 typer adgangsmodifikatorer, standard, offentlig, privat og beskyttet, som understøttes i . I denne artikel vil jeg udelukkende fokusere på beskyttet i Java og hjælpe dig med at få klar indsigt i det.

er postgraduate det samme som mestre

Nedenfor er de emner, jeg vil diskutere i denne artikel:





Hvad er beskyttet i Java?

Som nævnt før er beskyttet i Java en adgangsmodifikator, der hjælper en programmør med at tildele synligheden af ​​en klasse, dens medlemmer, grænseflader osv. Når klassemedlemmer er erklæret beskyttet i Java, er de detkun tilgængelig inden for det samme pakke såvel som til basisklassens direkte underklasser. Når du bruger beskyttet nøgleord i Java, skal du huske på, at kun klassemedlemmer kan erklæres beskyttet. Klasser og grænseflader kan ikke erklæres beskyttet i Java.

Nu tænker du måske over, hvorfor klasser og grænseflader ikke kan beskyttes?



Hvis du tænker logisk, bliver svaret helt klart. Hvis en klasse er beskyttet, vil den kun være synlig for de klasser, der findes i den samme pakke. Nu, som jeg har nævnt før, når noget er gjort beskyttet i Java, er det også synligt for dets underklasser.

Men her er en tvetydighed. For at andre klasser skal udvide en beskyttet klasse, skal den overordnede klasse være synlig. Hvordan vil du udvide noget, der ikke er synligt i første omgang? Dette medfører tvetydighed, og det er ikke tilladt at oprette beskyttede klasser .

Lad os nu forstå, hvorfor grænseflader ikke kan beskyttes. Nå, i Java bliver elementerne generelt beskyttet, så deres implementeringer kan deles blandt andre. Men i tilfælde af grænseflader , de har ingen implementering, så der er ingen mening i at dele dem. Således skal alle de metoder, der findes i grænsefladerne, være offentlige, så enhver klasse eller stivere let kan implementere dem.



Således digkun kan erklære og datamedlemmerne som beskyttet i Java og ikke klasser eller grænseflader. Dette hjælper med at indkapsle koden ved at begrænse adgangen til klassemedlemmerne. Det hjælper også med at forhindre misbrug af data.

Beskyttet implementering

Lad os nu prøve at implementere det, vi har lært indtil nu. Så her opretter jeg to klasser, der hver tilhører en separat pakke.

EduProtected.java i pakke edu1

pakke edu1 offentlig klasse EduProtected {beskyttet ugyldig besked (String disp) {System.out.println ('Pakke 1 modtaget meddelelse:' + disp)}}

EduSubClass.java i pakke edu2

pakke edu2 import edu1.EduProtected public class EduSubClass udvider EduProtected {public static void main (String [] args) {EduProtected show = new EduProtected () // påkalder besked () fra EduProtected class show.message ('Hello from package2 subclass') }}

Produktion:

Pakke 1-besked modtaget: Hej fra pakke2-underklasse

Dette bringer os til slutningen af ​​denne artikel.Hvis du vil vide mere om Java, kan du henvise til vores .

Nu hvor du har forstået, hvad der er beskyttet i Java, skal du tjekke af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-uddannelses- og certificeringskursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne artikel, og vi vender tilbage til dig hurtigst muligt.