DOMANDA Classe in Java

Scartus

Nuovo Utente
20
0
Salve a tutti, mi sto introducendo al mondo della programmazione android tramite java.
Avrei bisogno di chiarezza sulle classi.
Nella programmazione java ho capito che viene tutto definito da queste classi.
Da quello che ho capito sono come "funzioni" esterne al Main (ad esempio) che vengono richiamate in modo che nel codice (in questo caso del Main) si possano usare variabili e funzioni scritte nella classe stessa.
E' giusto pensare alle classi come a delle funzioni che invece di essere interne, sono esterne?
L'utilità è (come nelle funzioni che vengono scritte e richiamate nel codice stesso) di non dover scrivere diverse volte lo stesso pezzo di codice per un lavoro uguale o simile?

Ringrazio tutti per la disponibilità
 

rodhellas

Utente Èlite
1,522
427
CPU
Ryzen 5 3600
Dissipatore
GELID Phantom
Scheda Madre
MSI B450 Gaming Plus Max
HDD
500GB m.2 + 2TB HDD
RAM
16GB Corsair LPX 3000mhz
GPU
Gigabyte GTX 960 OC
Audio
Integrata
Monitor
SyncMaster 223BW
PSU
Antec HCG-520M
Case
Meshify C
Net
Gigabit Fastweb
OS
Windows 10 64bit
In verità una classe è più simile ad una struct (alla C) con all'interno delle proprie funzioni ( chiamate metodi ). L'utilità sta nel fatto che lavori su di un'entità (oggetto) che ha dei campi e delle azioni predefinite ( si sa cosa è e cosa fa).
Per fare un esempio classico terra terra, una classe è tipo l'automobile: è composta da varie componenti ( volante, ruote, motore ) ovvero i campi, che possono differire tra un'auto all'altra, e dalle azioni che può compiere la stessa ( accelera, decelera, frena ) che sono i metodi ( es. getSomma, getTotale ) e che in generale sono uguali per tutte le auto.
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,918
11,562
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
E' giusto pensare alle classi come a delle funzioni che invece di essere interne, sono esterne?
no, è complemante errato: le classi non sono funzioni o procedure;
una classe è un modello astratto di dato (tipo di dato) con abbinate determinate funzionalità chiamate metodi (sono questi che in altri linguagi si chiamano funzioni o procedure).

L'utilità è (come nelle funzioni che vengono scritte e richiamate nel codice stesso) di non dover scrivere diverse volte lo stesso pezzo di codice per un lavoro uguale o simile?
vero ma c'è molto di più.

Ti suggerisco di studiare Java molto più a fondo, per la programmazione Android una conoscenza superficiale non è assolutamente sufficiente (non vai oltre qualche esempio giocattolo che trovi sui libri introduttivi).
 
Ultima modifica:

micpap

Nuovo Utente
60
1
Salve a tutti, mi sto introducendo al mondo della programmazione android tramite java.
Avrei bisogno di chiarezza sulle classi.
Nella programmazione java ho capito che viene tutto definito da queste classi.
Da quello che ho capito sono come "funzioni" esterne al Main (ad esempio) che vengono richiamate in modo che nel codice (in questo caso del Main) si possano usare variabili e funzioni scritte nella classe stessa.
E' giusto pensare alle classi come a delle funzioni che invece di essere interne, sono esterne?
L'utilità è (come nelle funzioni che vengono scritte e richiamate nel codice stesso) di non dover scrivere diverse volte lo stesso pezzo di codice per un lavoro uguale o simile?

Ringrazio tutti per la disponibilità
In android, se ricordo bene, non c'è un metodo main nel quale c'è il codice che richiama le funzioni da eseguire, bensì un'intera classe che è la classe di "partenza" diciamo, dove ci sono le varie procedure per inizializzare l'app.
In java una classe rappresenta un insieme che ha caratteristiche comuni, così in android grosso modo una classe rappresenta una schermata dell'app.
Qundi una classe java ha metodi e attributi che manipolano e rappresentato quel dato, quell'idea che la classe vuole rappresentare.
Può sembrare noioso ma come ti hanno già consigliato è meglio che tu impari le basi di java senza pensare alla programmazione android, quella verrà in seguito ;)
 

androix

Nuovo Utente
57
3
Salve a tutti, mi sto introducendo al mondo della programmazione android tramite java.
Avrei bisogno di chiarezza sulle classi.
Nella programmazione java ho capito che viene tutto definito da queste classi.
Da quello che ho capito sono come "funzioni" esterne al Main (ad esempio) che vengono richiamate in modo che nel codice (in questo caso del Main) si possano usare variabili e funzioni scritte nella classe stessa.
E' giusto pensare alle classi come a delle funzioni che invece di essere interne, sono esterne?
L'utilità è (come nelle funzioni che vengono scritte e richiamate nel codice stesso) di non dover scrivere diverse volte lo stesso pezzo di codice per un lavoro uguale o simile?

Ringrazio tutti per la disponibilità
Il concetto di classe rientra nella parte relativa alla OOP dove l'elemento principale è l'oggetto. Le classi sono molto utili in programmazione proprio perchè è possibile instaziare degli oggetti di una determinata classe che assumono le stesse caratteristiche di tutti gli altri oggetti della stessa classe. Ad esempio:
È possibile creare una classe "Rettangoli" a cui poi è possibile instanziare infiniti rettangoli con ognuno una base e un altezza diversa, ma tutti questi rettangoli che diventeranno poi oggetti avranno in comune tra loro il fatto di essere rettangoli, sarà quindi possibile creare un metodo "Area",ad esempio, nella classe "Rettangoli" in grado di poter stabilire il valore dell area di qualsiasi rettangolo di quella classe.
Ad esempio: int area= rettangoloA.area(); dove rettangoloA è un rettangolo prima istanziato
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!