chi saprebbe darmi queste definizioni?NN mi sono completamente chiare
chi saprebbe darmi queste definizioni?NN mi sono completamente chiare
Vediamo se riesco a spiegare bene:Originariamente inviato da arche3dstudio
chi saprebbe darmi queste definizioni?NN mi sono completamente chiare
Una classe è l'elemento fondamentale in un linguaggio object oriented. Descrive una determinata entità astratta o reale raggruppandone gli attributi (le variabili di istanza) e le operazioni eseguibili su quella entità (i metodi).
Un oggetto è una istanza specifica di una classe.
Un metodo è una procedura, intesa come sequenza di istruzioni, che definisce una operazione che può essere eseguita sulla classe o su una istanza della classe (secondo il tipo di metodo).
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ora ti dico cosa ho capito,anche se mi sa ke sbaglio.mi aiuti a correggermi cosi mi è + facile capire?
allora,le classi sono i mattoni di un programma java,essa racchiude tutti gli oggetti,ed ogni oggetto ha le sue proprietà che chiamiamo metodi.Ho provato a riassumerlo in modo molto semplice,x aiutarmi a fissarlo,anche se nn ho capito cosa sono le istanze,in flash sono una copia dipendente dal simbolo principale,è lo stesso pure in java?
Facciamo un esempio pratico.Originariamente inviato da arche3dstudio
allora,le classi sono i mattoni di un programma java,essa racchiude tutti gli oggetti,ed ogni oggetto ha le sue proprietà che chiamiamo metodi.Ho provato a riassumerlo in modo molto semplice,x aiutarmi a fissarlo,anche se nn ho capito cosa sono le istanze,in flash sono una copia dipendente dal simbolo principale,è lo stesso pure in java?
Vogliamo rappresentare una entità reale, una persona. Creo quindi una classe Persona:
La classe ha 2 variabili di istanza (gli attributi) che sono 'nome' e 'cognome'. In più ha un metodo stampa() che permette di stampare in output il nome/cognome.codice:public class Persona { private String nome; private String cognome; public Persona (String nome, String cognome) { this.nome = nome; this.cognome = cognome; } public void stampa () { System.out.println ("nome=" + nome ", cognome=" + cognome); } }
Adesso voglio creare 2 oggetti che rappresentano 2 persone diverse.
Persona pers1 = new Persona ("Bill", "Gates");
Persona pers2 = new Persona ("Steve", "Jobs");
Cosa ho fatto?? Ho creato 2 istanze della classe Persona. Ho 2 oggetti distinti, referenziati dalle variabili 'pers1' e 'pers2' e ognuno dei 2 oggetti ha dei valori specifici nei suoi attributi (che sono le variabili di istanza nome e cognome).
Potrei ad esempio voler stampare a video i dati della persona. Quindi invoco sull'oggetto che voglio il metodo stampa():
pers1.stampa ();
per ottenere in stampa:
nome=Bill, cognome=Gates
Nota finale: quel public Persona (String nome.....) non è propriamente un metodo ma un costruttore, serve per inizializzare l'oggetto.
Più chiaro adesso?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
No, hai fatto un po' di confusione.
Se la classe è il progetto di un' auto, l'oggetto è l' auto effettivamente costruita.
Nella classe vengono definite le caratteristiche dell'oggetto finale, chiamate proprietà, per esempio numero_ruote, cilindrata, numero_posti ecc. Le azioni che l'oggetto puo'
eseguire sono i metodi, nel caso dell'auto potrebbero essere accendi_il_motore, parti,
frena, accelera, svolta ecc...
Progettata una classe puoi creare un numero illimitato di oggetti di quella classe.
Proprio come il progettista progetta una Punto e da questo progetto effettivamente se
ne costruiscono milioni di esemplari, dette istanze.
Ciao, Brainjar
ok allora grazie per le due spiegazioni,ok riproviamo,ora penso di aver capito
allora la classe,è cio che voglio creare,il tutto gia finito,i metodi è tutto cio che puo fare quello ke ho creato,e i gli oggetti sarebbero le istanze della classe.(riassunto in modo molto breve,ma penso sia così correggetemi,se sbaglio ancora).
Si, molto stringato, ma è così.
L'esempio che ti ha fatto andbin, poi, è chiaro e immediato, da manuale.
Ciao, Brainjar