Intanto chiama con il giusto nome le varie cose:Originariamente inviato da JANUS70
Ciao, mi piacerebbe capire com'è strutturato il programma che trovo come esempio nella guida Java.
da quello che capisco io ..
abbiamo un main dentro al quale viene:
- istanziato l'oggetto 'e' della classe 'Eratostene'
- chiamato l'evento 'calcolaPrimi'
- chiamato l'evento 'scriviPrimi'
dentro all'evento 'calcolaPrimi' (ciclo 'while'):
- si chiama l'evento 'elMul', che non ha ritorno (void), e a cui viene passato il campo 'num'
- si chiama l'evento 'prossimo', che ha come ritorno il campo 'num', che gli viene anche passato come input
a stò punto mi chiedo (sempre che quello che descritto finora sia corretto) ..
l'evento 'Eratostene' dell'omonima classe, dove in sostanza si dichiarano e valorizzano i 2 array, parte con l'istanza dell'oggetto 'e' ? (visto che dal main non viene chiamato ..)
e quale differenza ci sarebbe con tutti gli altri eventi che trovo dentro la classe, che devono essere invece 'chiamati' ?
Grazie mille
1. la classe serve a modellare un oggetto. In soldoni, se tu vuoi rappresentare le automobili, sicuramente avrai una classe Automobile, che ha varie proprietà (es. tipo, motore, colore, targa) e offre varie funzionalità che si chiamano metodi (es. cammina, frena). L'evento in java è un'altra cosa.
2. l'oggetto è un'istanza di classe. Nel senso che rappresenta concretamente un'automobile con le sue caratteristiche.
3. il costruttore è un metodo particolare che serve principalmente a creare un oggetto di una data classe e a dare allo stesso uno stato consistente.
E' obbligatorio per una classe avere un costruttore, se non ne hai nemmeno uno il compilatore ne aggiunge uno di default (che non fa niente).
4. questo è un caso particolare in cui dal main istanzi la classe che contiene il main. Il costruttore della classe valorizza i due array (scelta implementativa). Una volta che hai un'istanza della classe puoi richiamare i metodi della stessa.
Il programma parte dal main, sempre e comunque. Poi il main si trova ad istanziare un oggetto che in questo caso è dello stesso tipo della classe che lo contiene.
Leggiti un buon testo al posto della guida, queste sono le basi di qualsiasi linguaggio di programmazione ad oggetti