Casting di oggetti in Java

Sommario
Le basi della programmazione in Giava a volte possono essere applicati agli oggetti in modo simile per ottenere un risultato simile, in questo caso possiamo vedere la tecnica del fare casting, se ricordiamo quando stavamo lanciando una variabile era semplicemente per fare in modo che una variabile di un tipo diventasse un altro tipo.
Con gli oggetti possiamo fare qualcosa di simile possiamo cambiare il tipo di un oggetto per un altro purché sia ​​all'interno della struttura gerarchica nella sua eredità.
Per fare il casting possiamo farlo implicitamente, cioè con un compito già Giava sa che deve cambiare il tipo dell'oggetto, per questo possiamo fare quanto segue:

Se osserviamo l'immagine, abbiamo dichiarato un oggetto della classe Oggetto e poi diciamo che era un'istanza di Alunno, nonostante l'oggetto fosse già di un tipo abbiamo forzato il casting ed è diventato di un altro tipo con un semplice compito, questo perché la classe Alunno eredita della classe Oggetto.
Ora se eseguiamo il caso opposto e un oggetto della classe Student lo cambiamo in un tipo Object, cosa che accadrebbe:

In questo caso avremmo un errore di compilazione del nostro programma, ciò è dovuto alla gerarchia dell'ereditarietà, in quanto oggetto di Alunno sarà sempre il tipo Oggetto nessun problema, ma a Oggetto Non sarà sempre Student perché ha un ordine gerarchico più alto, quindi dobbiamo stare attenti quando stabiliamo il casting dei tipi di oggetto.
Ora se vogliamo fare una specie di casting esplicito, possiamo fare questo tipo di azione come passare da un ordine superiore a uno inferiore, vediamo il seguente caso:

In questo esempio stiamo dicendo direttamente al compilatore che deve trasformarsi nell'oggetto o del tipo Oggetto al ragazzo Alunno, con questo eseguiamo una conversione simile a quella che usiamo con i tipi di variabile primitivi.
istanza diUn'altra cosa che possiamo usare per assicurarci che tutto funzioni quando lavoriamo con i casting degli oggetti, è la parola riservata istanza di con esso possiamo sapere se un oggetto è un'istanza di una particolare classe, con questo possiamo creare nuove condizioni ed eseguire un casting solo ad esempio quando l'oggetto è un'istanza di una particolare classe.
Ad esempio:
 Oggetto mioOggetto = nuovo Cerchio (); if (myObject instanceof Circle) {System.out.println ("Il diametro del cerchio è:" + ((Circle) myObject) .getDiameter ()); } 

Qui vediamo quindi come facciamo prima un casting implicito, abbiamo dichiarato un oggetto della classe Object e poi gli abbiamo dato un tipo Circle, quindi chiediamo che nel nostro condizionale if() se l'oggetto è un'istanza di Circle, se la risposta è positiva andiamo al blocco interno, lì eseguiamo di nuovo un casting questa volta esplicito e invochiamo un metodo della classe.
Come possiamo vedere, eseguire questa procedura non è complessa, solo che dobbiamo essere chiari su come funziona Giava e la struttura gerarchica portata dalle classi e dalle loro istanze. Con questo finiamo questo tutorial e possiamo fare il casting di oggetti e possiamo anche sapere di quale classe sono istanze.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave