Bentornati.
In questo video impareremo a conoscere i modificatori di accesso in Java.
I modificatori di accesso sono parole chiave utilizzate per controllare la visibilità e l'accessibilità di classi, metodi
e campi all'interno di un programma Java.
In Java esistono quattro modificatori di accesso principali.
Pubblico, privato, protetto e predefinito.
Ma prima di iniziare a conoscerli, sposterò questa classe in un nuovo file per capire questi modificatori
di accesso.
Quindi la taglierò e creerò una nuova classe Java e la chiamerò auto.
In questo modo possiamo creare una classe.
Potete vedere all'interno di questo pacchetto, questo è il pacchetto, l'icona del pacchetto chiamato Campmaster
Coding Lab.
Ho due classi, l'auto e la mia classe.
Incollo qui la classe dell'auto.
Inizierò con il modificatore dell'accesso pubblico.
Modificatore di accesso pubblico.
Quando un metodo o un campo di una classe è contrassegnato come pubblico, è possibile accedervi da qualsiasi altra classe o pacchetto
dell'applicazione Java.
Quindi, ad esempio, se contrassegno public e la classe, si può vedere che è contrassegnata da public.
Quindi, se vado nella mia classe, posso creare un oggetto da questa macchina.
Quindi qui, auto, auto rossa, uguale auto nuova.
Sto creando un oggetto da esso, quindi vi sto accedendo.
Ok, quindi è visibile per me.
Proviamo a creare un pacchetto, un pacchetto diverso, e vediamo come possiamo accedere alle classi pubbliche del pacchetto
diverso per creare un altro pacchetto.
Ecco il pacchetto.
Com dot master coding lab.
Andrò nella cartella Java, creerò un nuovo pacchetto e lo chiamerò test another pack.
E all'interno di questo pacchetto creerò una nuova classe Java chiamata test.
Fino ad ora ho due pacchetti.
Com dot master coding, dot lib e un altro pacchetto e ho tre classi, due nella com dot
master coding dot lib e il test è inserito in un altro pacchetto.
Cercherò di accedere alla macchina.
Quindi qui dentro creerò un vuoto.
Sto solo testando.
Questo è il metodo.
Creerò una macchina.
Auto, auto gialla.
Pari a un'auto nuova.
E scriverò.
70 con il 2024.
Per favore, ragazzi, prestate attenzione.
Si può vedere che posso accedere all'auto perché è contrassegnata come pubblica e l'auto è inserita in un pacchetto diverso.
Per accedervi, devo importare il pacchetto chiamato campmaster coding dot lib.
Per importarlo.
Passare il mouse qui e fare clic su Alt+.
Inserendo import class, si può vedere che ho importato prima il pacchetto e poi la classe.
In questo modo è possibile creare o accedere alle classi nei modificatori di accesso pubblico con i diversi pacchetti.
Passiamo al secondo modificatore di accesso Private.
Quando un metodo o un campo di una classe è contrassegnato come privato, è possibile accedervi solo all'interno della stessa classe.
Non è visibile a nessun'altra classe o pacchetto.
Se vado nella classe auto e segno l'anno qui come privato, se vado in prova per esempio, o posso andare allo stesso pacchetto prima la
mia classe, poi ci sposteremo al punto rosso auto di prova e si può vedere che posso accedere a una velocità
di frenata e accelerare.
Solo l'attributo anno scompare, perché lo abbiamo contrassegnato come privato, in modo che non sia accessibile dalla classe.
Anche nella stessa confezione.
Se vado al test e provo con la macchina gialla, ovviamente non posso accedere all'anno protetto.
Quando un metodo o un campo di una classe è contrassegnato come protetto, vi possono accedere le classi dello stesso
pacchetto e anche le sottoclassi.
Quindi, ad esempio, andiamo all'auto e segniamo la velocità in modo protetto.
Vado nella mia classe e provo ad accedere al punto auto rosso e si vede che posso accedere alla velocità.
Si vede che sto accedendo alla velocità, ok.
E posso impostarlo come nove.
Ma se vado nella classe test, che si trova in un altro pacchetto, e cerco di accedere alla velocità, non posso accedere a
una velocità pari, per esempio, a otto, perché la velocità è protetta nella classe auto.
Così protetto, si può accedere alle classi dello stesso pacchetto.
L'ultimo tipo di modificatori di accesso è quello predefinito o privato del pacchetto.
Se non viene specificato alcun modificatore di accesso, viene considerato il livello di accesso predefinito.
Un metodo o un campo della classe con accesso predefinito può essere accessibile solo alle classi dello stesso pacchetto.
Ad esempio, qui abbiamo l'accelerazione.
Non ho specificato qui privato o pubblico o protetto.
Proviamo quindi ad accedere a questo metodo di accelerazione.
Cominciamo con la mia classe, che si trova nello stesso pacchetto.
Accederò al punto auto rosso accelerare.
Posso accelerare se vado nella classe di prova e provo ad accedere ad accelerate, ho un errore perché non l'ho
contrassegnato come pubblico.
È l'impostazione predefinita.
Quindi non posso accedervi da un altro pacchetto.
Ricordate che i modificatori di accesso svolgono un ruolo fondamentale nell'incapsulamento e nella definizione della visibilità
dei vari componenti del programma Java.
Utilizzando i modificatori di accesso appropriati, è possibile controllare i livelli di accesso e proteggere
i dati e i metodi sensibili da accessi non autorizzati.