Introduzione Lezione1 ; Primo programma: stampa di Pippo sullo schermo. Per fare ; cio' si usa il metodo System.out.println() Lezione2 ; Uso delle variabili Lezione3 ; Introduzione ai tipi di variabili: intere e a virgola mobile Lezione4 ; Lettura di una variabile da tastiera. Lezione5 ; Un programma: area e circ. di un cerchio dato il raggio Lezione6 ; Il loop for e gli operatori relazionali (<,>,ecc.) Lezione7 ; Esecuzione di un blocco di istruzioni in un loop for Lezione8 ; L'esecuzione a seconda di una condizione: costrutto if Lezione9 ; Esecuzione di un blocco di istruzioni appartenenti a un if Lezione10 ; Il ramo opzionale else del costrutto if Lezione11 ; Come annidare degli if dentro gli altri. Lezione12 ; Il costrutto switch per test multipli in un programma divino Lezione13 ; Il programma divino piu' funzionale tramite un for Lezione14 ; I loop tramite il while Lezione15 ; I loop tramite il do while Lezione16 ; Introduzione ai metodi (chiamati funzioni in C) Lezione17 ; Divisione in metodi del programma divino Lezione18 ; Introduzione agli array monodimensionali Lezione19 ; Uso di una variabile come indice di un array Lezione20 ; La media di 10 numeri immessi da tastiera usando un array Lezione21 ; Array a 2 o piu' dimensioni Lezione22 ; Le stringhe di testo, che in java sono oggetti (non array di char), su cui si puo' operare con vari metodi dedicati. Lezione23 ; Vediamo come rovesciare una stringa immessa da tastiera. Per quanto riguarda i listati sulle strutture, esse sono sostituite dalle classi, quindi salteremo direttamente alle conversioni dei listati C++ Lezione24 ; Gestione files: copia di un file (creazione di un backup) ; utilizzando le classi FileInputStream e FileOutputStream. Lezione25 ; Gestione files: informazioni su un file tramite la classe ; java.io.File, specializzata per i file sulla macchina host. Lezione26 ; Gestione files: copia di un file qualunque, analogo al "copy" ; del dos. Cio' e' possibile usando i parametri della linea di ; comando (gli argomenti che si scrivono dopo il nome del prog.). ; Ad esempio "java Jlez6c file1.txt file1.bak" copia il file1.txt ; sotto il nome di file1.bak. Ora passiamo alla conversione dei listatini C++, che per lo piu' riguardano la OOP. In realta' gia' nei listati precedenti abbiamo istanziato degli oggetti, siamo stati costretti! Lezione27 ; Creazione di una classe con metodi pubblici e dati privati. Lezione28 ; Aggiungiamo il costruttore alla classe. Da notare che il ; distruttore in Java sarebbe il metodo finalize(), pero' a causa ; del GC (Garbage Collector, che dealloca automaticamente le ; risorse non piu' utili) risulta difficile capire quando sia ; effettivamente chiamato. Lezione29 ; Rendiamo parametrizzato il costruttore. Lezione30 ; Un esempio di polimorfismo: scriviamo 3 funzioni somma(), ; che hanno lo stesso nome, ma parametri diversi: una e' per ; numeri int, una per i long e l'ultima per i float. ; In questo modo facciamo una sovrapposizione di funzioni, ; detta "overload": possiamo scrivere somma() per sommare ; numeri int,long e float, senza preoccuparci, sara' il ; compilatore a scegliere la funzione giusta volta per volta, ; rendendo piu' semplice il nostro compito. Lezione31 ; Un esempio applicato alle classi: sovrapposizione (overload) ; di costruttori. Lezione32 ; Sperimentiamo l'ereditarieta' (inheritance) derivando dalla ; classe animale (superclasse) delle sottoclassi "figlie", che ; erediteranno le variabili e i metodi della classe "padre", ; risparmiandoci di riscriverle, e limitando il nostro lavoro ; all'aggiunta delle variabili e dei metodi peculiari delle ; classi derivate. Il riutilizzo del codice e' evidente. Lezione33 ; Quando si istanziano degli oggetti da una classe, ognuno ; di questi oggetti dispone di copie personali dei metodi e ; delle variabili definite dalla classe. ; Cioe', se a e b sono due classi di tipo animale, le due ; variabili a.numerozampe e b.numerozampe sono autonome, ; per cui cambiando una non si modifica l'altra. ; E' possibile pero' definire STATIC degli elementi di una ; classe: cio' significa che se ne fa esistere una sola ; copia, condivisa da tutti gli oggetti istanziati.
Potete inoltre visionare online gli esempi della seconda parte del corso:
Testo parte 2
MiaApplet1.html
MiaApplet1.java
MiaApplet2.html
MiaApplet2.java
CheckboxG1.html
CheckboxG1.java
Scrollbar1.html
Scrollbar1.java
TextField1.html
TextField1.java