WEBVTT

00:00.110 --> 00:01.040
Bentornati.

00:01.040 --> 00:05.180
In questo video impareremo a conoscere i modificatori di accesso in Java.

00:05.210 --> 00:12.500
I modificatori di accesso sono parole chiave utilizzate per controllare la visibilità e l'accessibilità di classi, metodi

00:12.500 --> 00:15.320
e campi all'interno di un programma Java.

00:15.320 --> 00:18.440
In Java esistono quattro modificatori di accesso principali.

00:18.590 --> 00:23.350
Pubblico, privato, protetto e predefinito.

00:23.360 --> 00:32.120
Ma prima di iniziare a conoscerli, sposterò questa classe in un nuovo file per capire questi modificatori

00:32.120 --> 00:33.440
di accesso.

00:33.440 --> 00:41.530
Quindi la taglierò e creerò una nuova classe Java e la chiamerò auto.

00:41.540 --> 00:44.720
In questo modo possiamo creare una classe.

00:44.720 --> 00:51.800
Potete vedere all'interno di questo pacchetto, questo è il pacchetto, l'icona del pacchetto chiamato Campmaster

00:51.800 --> 00:52.760
Coding Lab.

00:53.030 --> 00:57.350
Ho due classi, l'auto e la mia classe.

00:57.350 --> 01:01.230
Incollo qui la classe dell'auto.

01:01.230 --> 01:05.720
Inizierò con il modificatore dell'accesso pubblico.

01:05.730 --> 01:08.420
Modificatore di accesso pubblico.

01:08.430 --> 01:17.910
Quando un metodo o un campo di una classe è contrassegnato come pubblico, è possibile accedervi da qualsiasi altra classe o pacchetto

01:17.910 --> 01:19.920
dell'applicazione Java.

01:19.920 --> 01:27.300
Quindi, ad esempio, se contrassegno public e la classe, si può vedere che è contrassegnata da public.

01:27.300 --> 01:35.000
Quindi, se vado nella mia classe, posso creare un oggetto da questa macchina.

01:35.010 --> 01:39.870
Quindi qui, auto, auto rossa, uguale auto nuova.

01:40.200 --> 01:45.030
Sto creando un oggetto da esso, quindi vi sto accedendo.

01:45.030 --> 01:47.070
Ok, quindi è visibile per me.

01:47.640 --> 01:55.470
Proviamo a creare un pacchetto, un pacchetto diverso, e vediamo come possiamo accedere alle classi pubbliche del pacchetto

01:55.470 --> 01:58.650
diverso per creare un altro pacchetto.

01:58.650 --> 02:00.210
Ecco il pacchetto.

02:00.210 --> 02:02.310
Com dot master coding lab.

02:02.460 --> 02:14.190
Andrò nella cartella Java, creerò un nuovo pacchetto e lo chiamerò test another pack.

02:14.190 --> 02:20.400
E all'interno di questo pacchetto creerò una nuova classe Java chiamata test.

02:20.430 --> 02:22.950
Fino ad ora ho due pacchetti.

02:22.980 --> 02:31.530
Com dot master coding, dot lib e un altro pacchetto e ho tre classi, due nella com dot

02:31.530 --> 02:38.280
master coding dot lib e il test è inserito in un altro pacchetto.

02:38.280 --> 02:40.800
Cercherò di accedere alla macchina.

02:41.340 --> 02:45.690
Quindi qui dentro creerò un vuoto.

02:46.490 --> 02:48.770
Sto solo testando.

02:48.770 --> 02:50.310
Questo è il metodo.

02:50.330 --> 02:52.840
Creerò una macchina.

02:53.000 --> 02:56.000
Auto, auto gialla.

02:56.570 --> 03:00.170
Pari a un'auto nuova.

03:00.170 --> 03:01.820
E scriverò.

03:02.540 --> 03:07.190
70 con il 2024.

03:07.460 --> 03:09.920
Per favore, ragazzi, prestate attenzione.

03:09.920 --> 03:18.440
Si può vedere che posso accedere all'auto perché è contrassegnata come pubblica e l'auto è inserita in un pacchetto diverso.

03:18.440 --> 03:26.240
Per accedervi, devo importare il pacchetto chiamato campmaster coding dot lib.

03:26.240 --> 03:27.650
Per importarlo.

03:27.650 --> 03:31.430
Passare il mouse qui e fare clic su Alt+.

03:31.430 --> 03:43.250
Inserendo import class, si può vedere che ho importato prima il pacchetto e poi la classe.

03:43.610 --> 03:54.980
In questo modo è possibile creare o accedere alle classi nei modificatori di accesso pubblico con i diversi pacchetti.

03:54.980 --> 03:59.060
Passiamo al secondo modificatore di accesso Private.

03:59.090 --> 04:06.300
Quando un metodo o un campo di una classe è contrassegnato come privato, è possibile accedervi solo all'interno della stessa classe.

04:06.300 --> 04:09.930
Non è visibile a nessun'altra classe o pacchetto.

04:09.930 --> 04:21.150
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

04:21.150 --> 04:29.700
mia classe, poi ci sposteremo al punto rosso auto di prova e si può vedere che posso accedere a una velocità

04:29.700 --> 04:32.610
di frenata e accelerare.

04:32.640 --> 04:45.030
Solo l'attributo anno scompare, perché lo abbiamo contrassegnato come privato, in modo che non sia accessibile dalla classe.

04:45.030 --> 04:47.010
Anche nella stessa confezione.

04:47.010 --> 04:56.880
Se vado al test e provo con la macchina gialla, ovviamente non posso accedere all'anno protetto.

04:56.970 --> 05:04.980
Quando un metodo o un campo di una classe è contrassegnato come protetto, vi possono accedere le classi dello stesso

05:04.980 --> 05:07.740
pacchetto e anche le sottoclassi.

05:07.740 --> 05:14.610
Quindi, ad esempio, andiamo all'auto e segniamo la velocità in modo protetto.

05:14.730 --> 05:24.030
Vado nella mia classe e provo ad accedere al punto auto rosso e si vede che posso accedere alla velocità.

05:24.030 --> 05:28.020
Si vede che sto accedendo alla velocità, ok.

05:28.020 --> 05:30.360
E posso impostarlo come nove.

05:30.360 --> 05:43.170
Ma se vado nella classe test, che si trova in un altro pacchetto, e cerco di accedere alla velocità, non posso accedere a

05:43.170 --> 05:52.890
una velocità pari, per esempio, a otto, perché la velocità è protetta nella classe auto.

05:52.890 --> 05:59.460
Così protetto, si può accedere alle classi dello stesso pacchetto.

05:59.580 --> 06:06.660
L'ultimo tipo di modificatori di accesso è quello predefinito o privato del pacchetto.

06:06.660 --> 06:12.840
Se non viene specificato alcun modificatore di accesso, viene considerato il livello di accesso predefinito.

06:12.900 --> 06:22.650
Un metodo o un campo della classe con accesso predefinito può essere accessibile solo alle classi dello stesso pacchetto.

06:22.650 --> 06:27.060
Ad esempio, qui abbiamo l'accelerazione.

06:27.330 --> 06:33.660
Non ho specificato qui privato o pubblico o protetto.

06:33.660 --> 06:37.740
Proviamo quindi ad accedere a questo metodo di accelerazione.

06:37.740 --> 06:42.900
Cominciamo con la mia classe, che si trova nello stesso pacchetto.

06:42.900 --> 06:46.230
Accederò al punto auto rosso accelerare.

06:46.230 --> 06:57.510
Posso accelerare se vado nella classe di prova e provo ad accedere ad accelerate, ho un errore perché non l'ho

06:57.510 --> 07:01.290
contrassegnato come pubblico.

07:01.320 --> 07:03.360
È l'impostazione predefinita.

07:03.450 --> 07:07.380
Quindi non posso accedervi da un altro pacchetto.

07:07.380 --> 07:15.570
Ricordate che i modificatori di accesso svolgono un ruolo fondamentale nell'incapsulamento e nella definizione della visibilità

07:15.570 --> 07:18.600
dei vari componenti del programma Java.

07:18.600 --> 07:26.070
Utilizzando i modificatori di accesso appropriati, è possibile controllare i livelli di accesso e proteggere

07:26.070 --> 07:30.330
i dati e i metodi sensibili da accessi non autorizzati.
