DOMENICA 05 APRILE 2015.pdf - Ordine dei Farmacisti della

a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
boolean
break
case
catch
char
class
continue
default
do
double
else
false
final
for
if
import
Codice documento
LABINF.01
Parole chiave del linguaggio
int
short
long
signed
main
static
new
switch
public
throws
register
true
return
try
Commenti
singola riga
// riga di commento
righe multiple /*
….. */
Dichiarazione
variab tipo ident;
ili
costan final tipo
unsigned
void
while
tipo: int, double, char, String,
boolean
Commenti javadoc
/** commento */
Effetto
monolinea
Tag javadoc
@author nome
(*)
Nome autore
/**
* commento
*/
/**
*
* @tag commento tag
*/
multilinea
@param nome descrizione
Descrizione dei parametri
@return descrizione
@throws nomeclasse descrizione
Descrizione tipo restituito
Descriz. Classe di eccezione
@see riferimento
Aggiunta See also…
@since versione
Versione in cui viene introd.
Descrizione tag
(elencati di
seguito)
Scopo
Tab. 1 – Commenti di Javadoc
Istruzioni semplici
InputStreamReader In = new InputStreamReader (System.in);
BufferedReader Tastiera = new BufferedReader (In);
variabile= Integer.parseInt (Tastiera.readLine());
variabile= Double.parseDouble (Tastiera.readLine());
variabile= Tastiera.readLine();
System.out.println (variabile);
variabile = espressione
Tab. 2 – Le istruzioni semplici
Istruzioni di I/O mediante finestre grafiche
variabile = Integer.parseInt(JOptionPane.showInputDialog (stringa));
variabile = Double.parseDouble(JOptionPane.showInputDialog (stringa));
variabile = JOptionPane.showInputDialog (stringa);
JOptionPane.showMessageDialog (null, stringa);
Tab. 3 – Input/output mediante finestre grafiche
lla classe Choice
M. Malatesta - rel 54
06/10/2014
Creazione oggetto Tastiera
Legge la variabile intera
Legge la variabile reale
Legge la variabile stringa
Stampa la variabile
Assegna espressione a variabile
Legge la variabile intera
Legge la variabile reale
Legge la variabile stringa
Stampa la stringa
1
a.s. 2012-13
Tipi di dato
logico
carattere
interi
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Tipo
boolean
unsigned char
char
unsigned short
short
int
unsigned long
long
reali
float
double
Tab. 4 – I principali tipi di dato
Operatori aritmetici
Addizione
sottrazione
*
Moltiplicazione
/
Divisione
%
Modulo
+
Operatori di assegnazione
++
Autoincremento
-Autodecremento
+=
Incremento
-=
Decremento
*=
Moltiplicazione
/=
Divisione
%=
Modulo
<
>
<=
>=
==
!=
Codice documento
LABINF.01
Intervallo
false - true
da 0 a 255
da -128 a 127
Da 0 a 255
da -32768 a 32767
da -2.147.483.648 a 2.147.483.647
da 0 a 4.294.967.295
da -9223372036854775808 a
+9223372036854775807
da -3.4E38 a +3.4E38
da -1.7E-308 a 1,79E308
Operatori relazionali
Minore
Maggiore
Minore o uguale
Maggiore o uguale
Uguale
Diverso
Bit utilizzati
8
8
8
16
16
32
32
64
32
64
Operatori logici
AND
||
OR
!
NOT
&&
\n
\t
\r
\”
\\
\b
\’
\?
\a
\0
\f
Sequenza di escape
A capo
Tabulazione
Inizio riga
Virgolette
Backslash
Arretra un carattere
Apice
Punto interrogativo
Beep
Fine stringa
Salto pagina
Funzioni classe String
s1="le";
Assegnazione a s1 di una stringa costante
s3=s1+s2;
Concatena s1 con s2
s3 = s1.concat(s2);
Concatena s1 con s2
pos=s1.indexOf (c);
Posizione della prima occorrenza di c in s1
pos=s1.indexOf (s2);
Posizione della prima occorrenza di s2 in s1
pos = s1.lastIindexOf (c);
Posizione dell’ultima occorrenza di c in s1
pos = s1.lastIindexOf (s2); Posizione dell’ultima occorrenza di s2 in s1
esito = s1.startsWith (s2); Verifica se s2 è prefisso di s1
esito = s1.endsWith (s2);
Verifica se s2 è suffisso di s1
esito = s1.equals(s2);
Verifica l’uguaglianza di s1 ed s2
l = s1.compareTo (s2);
l = -1 se s1<s2; l = 0 se s1=s2; l = 1 se s1>s2
s2 = s1.toUpperCase ();
Converte s1 in maiuscolo
s2 = s1.toLowerCase ();
Converte s1 in minuscolo
l = s1.length();
Dà la lunghezza di s1
c = s1.charAt(2);
Pone in c il carattere in terza posizione di s1
s2=s1.substring (3,10);
Pone in s2 i caratteri di s1 dalla posizione 3 alla 10 esclusa
Tab. 5 – Le funzioni della classe String
M. Malatesta - rel 54
06/10/2014
2
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe Math
A= Math.abs (espressione);
Dà il valore assoluto di espressione
A= Math.pow (b, e);
Dà la potenza be
A= Math.random ();
Dà un valore casuale tra 0 ed 1
A= Math.sqrt (espressione);
Dà la radice quadrata di espressione
A= Math.round (espressione);
Arrotonda espressione all’intero
System.out.println (Math.pi);
Stampa valore di pi greco
System.out.println (Math.e);
Stampa il numero “e” (base logaritmi naturali)
Tab. 6 – Le funzioni della classe Math
Funzioni di conversione
int a= Integer.parseInt (stringa);
Converte stringa in intero
float a= float.parseFloat (stringa);
Converte stringa in float
double a= Double.parseDouble (stringa);
Converte stringa in double
String s = String.valueOf (numero);
Converte numero in String
Tab. 7 – Le funzioni di conversione
Strutture di controllo
{
istruzione;
Sequenza
}
Selezione if (espressione logica)
istruzione;
semplice
if (espressione logica)
Selezione
istruzione;
doppia
else istruzione;
switch (variabile)
{ case valore_1:
istruzione; break;
…
Selezione
case valore_n:
multipla
istruzione; break;
default: istruzione; break;
}
Tab. 8 – Le strutture di controllo
Esecuzione da linea di comando
Compilazione
Individua gli errori sintattici e crea il file
bytecode (file .class):
C:> javac nomeprogramma.java
Esecuzione
Esegue il file .class prodotto dalla compilazione:
C:> java nomeprogramma
Esecuzione con parametri
Esegue il file .class e sostituisce i parametri p1 e
p2 indicati nella linea di comando ad args[0],
args[1]:
C:> java nomeprogramma p1 p2
(si sono indicati solo due parametri per
semplicità).
Tab. 9 – I paramteri args[ ]
Strutture di controllo
for (istruzione; espressione logica; istruzione)
Iterazione predefinita
istruzione
while (espressione logica)
Iterazione precondizionata
istruzione
do
{
Iterazione postcondizionata
istruzione
}while (espressione logica);
Tab. 10 – Le strutture di controllo iterative
M. Malatesta - rel 54
06/10/2014
3
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Schema di base di un’applicazione Java
/* Titolo del programma */
/* File: …… */
/* Data: ……*/
/* Autore: ….*/
public class nomeclasse
{ public static void main (String args[ ] )
{ blocco istruzioni
} //fine main
} // fine classe
Stream testo e binari
Stream testo standard
InputStreamReader per lo stream standard input (tastiera)
OutputStreamWriter per lo stream standard output (video)
Metodi
legge un carattere come intero dallo stream standard (-1 se il file è
int read()
finito)
void write (char c)
scrive nello stream standard di output il carattere c
chiude lo stream
void close ()
Tab. 11 – I metodi degli stream standard
Stream testo su disco
FileReader per streaam di input su disco
FileWriter per stream di output su disco
Metodi
legge un carattere come intero dallo stream di input (-1 se il file è
int read()
finito)
void write (char c)
scrive nello stream di output il carattere c
chiude lo stream
void close ()
Tab. 12 – I metodi degli stream su disco
Stream testo (bufferizzazione)
BufferedReader per stream di input bufferizzati
BufferedWriter per stream di output bufferizzati
Metodi
legge una stringa dallo stream di input (null se il file è finito)
String readLine()
void write (String s)
scrive nello stream di output la stringa s
inserisce un “a capo”nello stream di output
void newLine()
chiude lo stream
void close ()
Tab. 13 – I metodi degli stream di testo bufferizzati
Stream binari
FileInputStream per stream binari di input
FileOutputStream per stream binari di output
Metodi
legge un byte dallo stream di input (-1 se il file è finito)
int read()
void write (int b)
scrive un byte nello stream di output
svuota il buffer di output
void flush()
chiude lo stream
void close ()
Tab. 14 – I metodi degli stream binari
M. Malatesta - rel 54
06/10/2014
4
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Stream binari (bufferizzazione)
BufferedInputStream per stream binari di input bufferizzati
BufferedOutputStream per stream binari di output bufferizzati
Metodi
int read(byte b[])
legge un array di byte dallo stream di input (-1 se il file è finito)
void write (byte b[])
scrive un array di byte nello stream di output
svuota il buffer di output
void flush()
chiude lo stream
void close ()
Tab. 15 – I metodi degli stream binari bufferizzati
Stream binari di tipi primitivi
DataInputStream per stream di input
DataOutputStream per stream di output
Metodi
legge un booleano dallo stream di input (-1 se il file è finito)
int readBoolean()
legge un carattere dallo stream di input (-1 se il file è finito)
int readChar()
legge un double dallo stream di input (-1 se il file è finito)
int readDouble()
legge un float dallo stream di input (-1 se il file è finito)
int readFloat()
legge un intero dallo stream di input (-1 se il file è finito)
int readInt()
legge una stringa in formato UTF (null se il file è finito)
String readUTF()
scrive un booleano nello stream di output
void writeBoolean()
scrive un carattere nello stream di output
void writeChar()
scrive un double nello stream di output
void writeDouble()
scrive un float nello stream di output
void writeFloat()
scrive un intero nello stream di output
void writeInt()
void writeUTF(String s)
scrive una stringa nello stream di output
void write (byte b[])
scrive un array di byte nello stream di output
svuota il buffer di output
void flush()
chiude lo stream
void close ()
Tab. 16 – I metodi degli stream binari di dati primitivi
Stream binari di oggetti
ObjectInputStream per stream binari di input bufferizzati
ObjectOutputStream per stream binari di output bufferizzati
Metodi
legge un oggetto dallo stream di input (null se il file è finito)
Object readObject()
void writeObject (Object obj)
scrive un oggetto nello stream di output
svuota il buffer di output
void flush()
chiude lo stream
void close ()
Tab. 17 – I metodi degli stream binari di oggetti
M. Malatesta - rel 54
06/10/2014
5
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
File random
METODO
EFFETTO
RandomAccessFile ident =new
Crea uno stream di nome ident, associato al file
RandomAccessfile (String file, String mode)
esterno file. mode=”r”, “rw”, “w”,…
void close()
Chiude lo stream ad accesso random
long getFilePointer()
Restituisce il file pointer nel file corrente
long length()
Restituisce la lunghezza del file
int read()
Legge un byte di dati dal file
int read(byte[] b)
Legge un array di byte dal file
boolean readBoolean()
Legge un valore booleano dal file
char readChar()
Legge un carattere UNICODE dal file
double readDouble()
Legge un valore doppio dal file
float readFloat()
Legge un valore reale dal file
int readInt()
Legge un intero di 32 bit dal file
String readLine()
Legge una stringa dal file fino a fine linea
String readUTF()
Legge una stringa dal file
void seek(long pos)
Posiziona il file pointer a pos byte rispetto all’inizio
int write(byte[] b)
Scrive un array di byte sul file
int write(int b)
Scrive un byte sul file
int writeBoolean(boolean v)
Scrive un valore booleano sul file
int writeBytes(String s)
Scrive una stringa s sul file
void writeChar(int v)
Scrive un carattere di 2 byte sul file
void writeInt (int v)
Scrive un intero di 32 bit sul file
void writeDouble(double v)
Scrive un valore doppio sul file
void writeFloat(float v)
Scrive un valore reale sul file
void writeUTF(String s)
Scrive una stringa sul file
Tab. 18 – I metodi dei file random
Strutture dati e oggetti
tipo ident = new tipo [lunghezza];
tipo ident[ ] = {listavalori};
tipo ident [righe][colonne];
tipo ident[ ][n ] = { {lista riga 1},
{lista riga 2},
...
};
public boolean equals (Object o)
public int hashcode ()
public final Class getClass()
public String toString()
protected Object clone()
protected void finaline()
Tab. 19 – I metodi della classe Object
M. Malatesta - rel 54
06/10/2014
Vettori e matrici
Dichiara e alloca il vettore ident di lunghezza lunghezza
Dichiara e inizializza da programma il vettore ident
Dichiara e alloca una matrice ident di lunghezza righe*colonne
Dichiara e inizializza da programma la matrice ident, ponendo
su ogni riga la lista dei valori indicata, separati da virgole
Classe Object
Metodo che stabilisce se due oggetti sono uguali
Restituisce il codice dell’oggetto
Restituisce il nome della classe
Dà la descrizione testuale della classe
Crea unna copia dell’oggetto
Elimina l’oggetto dalla memoria
6
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Interfacce grafiche
METODO
Frame ident = new Frame();
Frame ident = new Frame(String titolo);
f.setLocation (int riga, int colonna);
f.setSize (int larghezza,int altezza);
f.setVisible (boolean v)
f.setResizable (boolean r)
EFFETTO
Crea la finestra ident
Crea la finestra ident con titolo
Posiziona la finestra in (riga,colonna)
Imposta larghezza ed altezza della finestra
v = false (finestra invisibile), v = true (finestra
visibile)
r= false (non ridimensionabile), r = true
(ridimensionabile)
Posiziona la finestra e imposta le dimensioni
f.setBounds(int riga, int colonna,
int larghezza,int altezza)
close ()
Chiude la finestra
Tab. 20 – I principali metodi della classe Frame
METODO
Panel ident = new Panel();
setBackground(Color)
EFFETTO
Crea il pannello ident
Imposta colore di sfondo
COSTANTE
COLORE
COSTANTE
Nero
Color.black
Color.magenta
Blu
Color.blue
Color.orange
Cyano
Coor.cyan
Color.pink
Color.darkGreen Verde scuro
Color.red
Grigio
Color.gray
Color.white
Verde
Color.green
Color.yellow
Grigio chiaro
Color.lightGray
Tab. 21 – Le costanti della classe Color
COLORE
Violetto
Arancio
Rosa
Rosso
Bianco
Giallo
METODO
Label ident = new Label();
Label ident = new Label(String testo);
Label ident = new Label(String testo,
int all);
EFFETTO
Crea l’etichetta ident vuota
Crea l’etichetta ident con testo
Crea l’etichetta ident con testo allineato a destra
(all=Label.RIGHT), centro (all=Label.CENTER) o
sinistra (all=Label.LEFT) (oppure all=2,1,0)
l.setForeground (Color.colore);
Imposta il colore del testo
l.setBackground (Color.colore);
Imposta il colore dello sfondo
l.setText (String stringa);
Imposta il testo nell’etichetta
String l.getText ();
Restituisce il testo presente nella label
int l.getAlignment ();
Restituisce l’allineamento corrente
int l.setAlignment (int all);
Imposta allineamento dell’etichetta
setFont (Font font);
Imposta il font dei caratteri dell’etichetta
Tab. 22 – I principali metodi della classe Label
METODO
Button ident = new Button ();
Button ident = new Button (String testo);
b.setLabel (String testo);
String b.getLabel ();
b.setEnable (boolean e);
Tab. 23 – I metodi della classe Button
M. Malatesta - rel 54
06/10/2014
EFFETTO
Crea un pulsante ident senza etichetta
Crea un pulsante ident con etichetta testo
Imposta l’etichetta del pulsante ident
Restituisce l’etichetta presente nel pulsante
Abilita (e=true) o disabilita (e=false) il pulsante
7
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
METODO
TextField ident = new TextField ();
TextField ident =
new TextField (String testo);
TextField ident = new TextField (int i);
TextField ident =
new TextField (String testo, int i);
String t.getText ();
t. setText (String testo);
t.setEditable (boolean e)
Codice documento
LABINF.01
EFFETTO
Crea una casella di testo ident vuota
Crea una casella ident con testo
Crea una casella di testo ident vuota di
lunghezza l
Crea una casella di testo ident con testo di
lunghezza i
Restituisce il testo presente nella casella di
testo t
Imposta il testo nella casella di testo t
Imposta la casella t come editabile (e=true) o
non editabile (e=false)
Tab. 24 – I metodi della classe TextField
METODO
Checkbox ident = new Checkbox ();
Checkbox ident = new Checkbox (String testo);
Checkbox ident =
new Checkbox (String testo, boolean s);
String c.getLabel ();
c. setLabel (String testo);
boolean c.getState ();
EFFETTO
Crea una casella ident vuota
Crea una casella ident con testo
Crea una casella ident con etichetta testo
selezionata (s=true) o deselezionata (s=false)
Restituisce il testo presente nell’etichetta di c
Imposta il testo nella casella c
Restituisce lo stato (true o false) della casella
c
c.setState (boolean s);
Imposta lo stato selezionato (s=true) o
deselezionato (s=false) della casella c
Tab. 25 – I principali metodi della classe Checkbox
METODO
CheckboxGroup ident=new CheckboxGroup ();
Checkbox ident = new Checkbox (String testo);
Checkbox ident =
new Checkbox (String testo, boolean s);
Checkbox ident = new Checkbox (String testo,
boolean s, CheckboxGroup g);
EFFETTO
Crea una casella ident vuota
Crea una casella ident con testo
Crea una casella ident con etichetta testo
selezionata (s=true) o deselezionata (s=false)
Crea una casella ident con etichetta testo
selezionata (s=true) o deselezionata (s=false)
facente parte del gruppo g di classe
CheckboxGroup
String c.getLabel ();
Restituisce il testo presente nell’etichetta di c
c. setLabel (String testo);
Imposta il testo nella casella c
boolean c.getState ();
Restituisce lo stato (true o false) della casella
c
c.setState (boolean s);
Imposta lo stato selezionato (s=true) o
deselezionato (s=false) della casella c
c. getSelectedCheckbox()
Dà la checkbox correntemente impostata per il
gruppo c
c.setSelectedCheckbox(Checkbox box)
Imposta come selezionata la checkbox box del
gruppo c
Tab. 26 – I principali metodi della classe CheckboxGroup
M. Malatesta - rel 54
06/10/2014
8
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
METODO
EFFETTO
Choice ident = new Choice ();
Crea una casella combinata ident vuota
c.addItem (String testo);
Aggiunge la voce testo alla casella c
String getItem (int index)
Restituisce la voce in posizione index
int getItemCount ()
Restituisce il numero di voci presenti
int getISelectedtem ()
Restituisce la posizione della voce corrente
String getISelectedtem ()
Restituisce la voce corrente
insert (String s, int index)
Inserisce la voce s in posizione index
remove (int index)
Rimuove la voce in posizione index
remove (String s)
Rimuove la prima occorrenza della voce s
removeAll ()
Rimuove tutte le voci dal menu
select (int index)
Seleziona la voce in posizione index
select (String s)
Seleziona la voce s
Tab. 27 – I principali metodi della classe Choice
METODO
EFFETTO
List l = new List();
Crea una nuova lista ident
List l = new List (int rows);
Crea una lista ident con rows righe visibili
List l = new List (int rows, boolean m)
Crea una lista ident di rows righe in modo multiplo
void add (String item);
Aggiunge item in coda alla lista
void add (String item, int index);
Aggiunge item in posizione index
String getItem (int index);
Dà la stringa in posizione index
int getItemCount();
Dà il numero di elementi nella lista
int getRows();
Dà il numero di righe visibili della lista
Dà la posizione dell’elemento selezionato
int getSelectedIndex();
String getSelectedItem();
Dà l’elemento selezionato
boolean isIndexSelected();
Vero se elemento index è selezionato
Vero se la lista ammette selezioni multiple
boolean isMultipleMode()
void remove (int index)
Elimina elemento in posizione index
Elimina tutti gli elementi dalla lista
roid removeAll()
void replaceItem (String item int index)
Rimpiazza elemento index con item
void deselect (int index)
Deseleziona elemento index
void select (int index)
Seleziona elemento index
Imposta il modo multiplo
void setMultipleMode()
Tab. 28 – I principali metodi della classe List
M. Malatesta - rel 54
06/10/2014
9
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
METODO
EFFETTO
Scrollbar ident = new Scrollbar ();
Crea una scrollbar ident
Scrollbar ident=new Scrollbar (int direct);
Crea una scrollbar ident orientata secondo direz
Scrollbar ident=new Scrollbar (int direz,
Crea una scrollbar ident con le proprietà indicate
int value, int visible, int min, int max);
int getBlockIncrement();
Dà l’incremento a blocchi
int getMaximum();
Dà il valore massimo della barra
int getMinimum();
Dà il valore minimo della barra
int getOrientation();
Dà l’orientazione della barra
int getUnitIncrement();
Dà l’incremento unitario
int getValue();
Dà il valore corrente della barra
int getVisibleAmount();
Dà la porzione visibile del cursore
int setBlockIncrement (int b);
Imposta incremento a blocchi
int setMaximum (int max);
Imposta il massimo valore
int setMinimum (int min);
Imposta il minimo valore
int setOrientation (int direct);
Imposta l’orientazione
int setUnitIncrement (int u);
Imposta incremento unitario
vois setValue (int value);
Imposta il valore della barra
int setVisibleAmount (int visible);
Imposta la porzione visibile del cursore
Tab. 29 – I principali metodi della classe Scrollbar
METODO
Menu()
Menu(String l)
void add(String label)
MenuItem add(MenuItem mi)
MenuItem getItem(int index)
int getItemcount()
void insert (MenuItem mi, int index)
void insert (String label, int index)
void remove (int index)
void removeAll()
Tab. 30 – I principali metodi della classe Menu
EFFETTO
Crea un menu
Crea u menu con etichetta l
Aggiunge label al menu
Aggiunge item con etichetta mi al menu corrente
Dà l’oggetto MenuItem in posizione index
Dà il numero di voci nel menu
Inserisce mi in posizione index del menu
Inserisce nuova label in posizione index
Rimuove la voce in posizione index
Rimuove tutte le voci dal menu
METODO
FlowLayout ident = new FlowLayout ();
FlowLayout ident = new FlowLayout (int all);
EFFETTO
Crea un LM di tipo FlowLayout
Crea un LM di tipo FlowLayout
con
allineamento all (FlowLayout.CENTER.
FlowLayout.LEFT, FlowLayout.RIGHT)
Tab. 31 – I principali costruttori della classe FlowLayout
METODO
BorderLayout ident = new BorderLayout ();
BorderLayout ident = new BorderLayout (int
hgap, int vgap);
EFFETTO
Crea un LM di tipo BorderLayout
Crea un LM di tipo BorderLayout con
spaziatura orizzontale hgap e verticale vgap tra
le componenti
Tab. 32 – I principali costruttori della classe BorderLayout
M. Malatesta - rel 54
06/10/2014
10
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
METODO
GridLayout ident = new GridLayout ();
EFFETTO
Crea un LM di tipo GridLayout con un
componente per colonna
GridLayout ident = new GridLayout (int r, int Crea un LM di tipo GridLayout con r righe e
c);
c colonne
GridLayout ident = new GridLayout (int r, int Crea un LM di tipo BorderLayout con r righe
c, int hgap, int vgap);
e c colonne e spaziatura orizzontale hgap e
verticale vgap tra le componenti
Tab. 33 – I principali costruttori della classe GridLayout
M. Malatesta - rel 54
06/10/2014
11
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Classe d’ascolto
FocusListener
ActionListener
Evento generato
Focus preso
Focus perso
Mouse entrato
Mouse uscito
Tasto mouse premuto
Tasto mouse rilasciato
Click
Mouse premuto e mosso
Mouse mosso
Tasto premuto
Tasto rilasciato
Tasto premuto e rilasciato
Finestra attivata
Finestra disattivata
Finestra chiusa
Chiudi finestra
Riduci a icona
Finestra aperta
Finestra deiconificata
Fuoco preso
Fuoco perso
Azione su oggetto
ItemListener
Click su un oggetto
TextListener
Testo modificato
MouseListener
MouseMotionListener
KeyListener
WindowListener
WindowFocusListener
Oggetto aggiunto
Oggetto tolto
Oggetto nascosto
ComponentListener
Oggetto mostrato
Oggetto ridimensionato
Oggetto mosso
Tab. 34 – Le classi d’ascolto Java
ContainerListener
Codice documento
LABINF.01
Origine (fire)
Tutti
Tutti
Tutti
Tutti
Window
Window
Button
TextField
Menu
Checkbox
Choice
CheckboxGroup
Listbox
TextField
TextArea
Tutti
Tutti
INTERFACCIA WindowListener
EVENTO
Finestra attivata
void windowActivated(WindowEvent e) {}
Finestra disattivata
void windowDeactivated(WindowEvent e) {}
Finestra chiusa
void windowClosed(WindowEvent e) {}
Riduci a icona
void windowIconified(WindowEvent e) {}
Finestra aperta
void windowOpened(WindowEvent e) {}
Finestra deiconificata
void windowDeiconified(WindowEvent e) {}
Chiudi finestra
void windowClosing(WindowEvent e)
Tab. 35 – I gestori di evento dell’interfaccia WindowListener
INTERFACCIA WindowFocusListener
EVENTO
Fuoco preso
void windowGainedFocus(WindowEvent e) {}
Fuoco perso
void windowLostFocus(WindowEvent e) {}
Tab. 36 – I gestori di evento dell’interfaccia WindowFocusListener
M. Malatesta - rel 54
06/10/2014
12
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
INTERFACCIA ActionListener
EVENTO
void actionPerformed (ActionEvent e) {}
Azione sul pulsante
Tab. 37 – I gestori di evento dell’interfaccia ActionListener
INTERFACCIA MouseListener
EVENTO
public void mouseClicked (MouseEvent e)
Click del mouse
public void mouseEntered (MouseEvent e)
Mouse entrato
public void mouseExited (MouseEvent e)
Mouse uscito
public void mousePressed (MouseEvent e)
Tasto mouse premuto
public void mouseReleased (MouseEvent e)
Tasto mouse rilasciato
Tab. 38 – I gestori di evento dell’interfaccia MouseListener
INTERFACCIA TextListener
EVENTO
Void textValueChanged (TextEvent e)
Testo modificato
Tab. 39 – Il gestore di evento dell’interfaccia TextListener
INTERFACCIA KeyListener
EVENTO
void keyPressed (KeyEvent e)
Testo premuto
void keyReleased (KeyEvent e)
Tasto rilasciato
void keyTyped (KeyEvent e)
Tasto premuto e rilasciato
Tab. 40 – Il gestore di evento dell’interfaccia KeyListener
INTERFACCIA ItemListener
EVENTO
Click su un oggetto
void itemStateChanged(ItemEvent e)
Tab. 41 – Il gestore di evento dell’interfaccia ItemListener
Animazione
Funzioni classe Timer
METODO
EFFETTO
Timer (int delay, ActionListener listener)
Crea oggetto Timer che avvisa i suoi ascoltatori
listeners ogni delay millisecondi
void start ()
Avvia il Timer, che inizia a mandare eventi ai suoi
ascoltatori
void stop()
Arresta il Timer e smette di inviare eventi
void setDelay (int delay)
Imposta il delay
Restituisce il valore di delay
int getDelay ()
Tab. 42 – I principali metodi della classe Timer
M. Malatesta - rel 54
06/10/2014
13
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Allocazione dinamica
Funzioni classe Vector
METODO
EFFETTO
Vector <tipo> ident =new Vector <tipo>()
Crea un vettore vuoto di nome ident
Vector <tipo>=new Vector (int n)
Crea un vettore ideint vuoto di n elementi
Vector<tipo>=new Vector (int n,
Crea un vettore di n elementi ed aggiunge inc
int inc)
elementi ogni volta che viene riempito.
void addElement(Object obj)
Aggiunge l’elemento obj in coda e incrementa di uno
la dimensione del vettore
void add (int index, Object obj)
Aggiunge l’elemento obj in posizione index
void clear()
Rimuove tutti gli elementi dal vettore
boolean contains (Object obj)
Test di esistenza dell’elemento obj nel vettore
Object elementAt (int index)
Restituisce l’oggetto presente in posizione index
int indexOf (Object obj)
Restituisce la posizione dell’elemento obj
Object firstElement ()
Restituisce l’oggetto presente in prima posizione
Object lastElement ()
Restituisce l’oggetto presente in ultima posizione
boolean isEmpty()
Test vettore vuoto
void insertelementAt (Object obj, int index) Inserisce elemento obj in posizione index
void removeElementAt (int index)
Rimuove elemento in posizione index
Object set (int index, Object obj)
Sostituisce con obj l’elemento in posizione index
int size()
Restituisce il numero di componenti presenti
String toString ()
Converte in stringa ciascun elemento del vettore
Tab. 43 – I principali metodi della classe Vector
Funzioni classe Arrays
METODO
EFFETTO
static List asList (Object v[])
Restituisce gli elementi dell’array v[] in una lista
static int binarySearch (tipo t[ ], tipo k)
Cerca nell’array t[ ] il valore k
static boolean equals (tipo t1[ ], tipo t2[ ]) Testa se i due array sono uguali
static void fill (tipo t[ ], tipo v)
Assegna a ciascuna componente di t[ ] il valore v
static void sort (tipo t[ ])
Ordina l’array t[ ]
Tab. 44 – I principali metodi della classe Arrays
Funzioni classe StringBuffer
METODO
EFFETTO
StringBuffer ()
Crea uno stringbuffer vuoto
StringBuffer (int length)
Crea uno stringbuffer di lunghezza length
StringBuffer(String str)
Crea uno stringbuffer e lo inizializza con str
StringBuffer append (tipo t)
Converte t in stringa e l’aggiunge allo stringbuffer
int length()
Dà il numero di caratteri dello stringbuffer
char charAt (int index)
Dà il carattere in posizione index dello stringbuffer
StringBuffer deleteCharAt (int index)
Elimina il carattere in posizione index
StringBuffer delete (int start, int end)
Elimina i caratteri da posizione start a end
int indexOf (String str)
Dà la posizione di str all’interno dello stringbuffer
StringBuffer insert (int index, tipo t)
Inserisce in posizione index di stringbuffer il dato t
StringBuffer replace (int start, int end,
Sostituisce con str una sottostringa di stringbuffer
String str)
void setCharAt (int index, char ch)
Pone ch in posizione index dello stringbuffer
String substring (int start)
Dà la sottostringa di stringbuffer a partire da start
String substring (int start, int end)
Dà la sottostringa di stringbuffer tra start e end
String toString ()
Converte lo stringbuffer in String
Tab. 45 – I principali metodi della classe StringBuffer
M. Malatesta - rel 54
06/10/2014
14
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe StringTokenizer
METODO
EFFETTO
StringTokenizer (String str))
Crea str come stringtokenizer vuoto
StringTokenizer (String str, String delim) Crea str stringtokenizer con delimitatore delim
numero di token ancora da analizzare
int countTokens ( )
true se esistono ancora token da analizzare
boolean hasMoreTokens ( )
String nextToken ( )
restituisce il token successivo
Tab. 46 – I principali metodi della classe StringTokenizer
Funzioni classe LinkedList
METODO
EFFETTO
LinkedList()
Crea una lista vuota
void add (Object elem)
Inserisce elem in coda alla lista
void addLast (Object elem)
Inserisce elem in coda alla lista
void add (int index, Object elem)
Inserisce elem in posizione index nella lista
void addFirst (Object elem)
Inserisce elem in testa alla lista
void clear ()
Rimuove tutti gli elementi dalla lista
boolean contains (Object elem)
Dà true se elem esiste nella lista
Object element ()
Dà il primo elemento della lista senza rimuoverlo
Object get (int index)
Restituisce l’elemento in posizione index
Object getFirst ()
Restituisce l’elemento in prima posizione
Object getLast ()
Restituisce l’elemento in ultima posizione
int IndexOf (Object elem)
Dà la posizione della prima occorrenza di elem
Object remove ()
Dà il primo elemento della lista e lo rimuove
Object removeFirst ()
Dà il primo elemento della lista e lo rimuove
Object remove (int index)
Dà l’elemento in posizione index e lo rimuove
Object removeLast ()
Dà l’ultimo elemento della lista e lo rimuove
Object set (int index, Object elem))
Sostituisce con elem, l’elemento in posizione index
int size ()
Dà il numero di elementi presenti
Tab. 47 – I principali metodi della classe LinkedList
METODO
EFFETTO
Stack s = new Stack();
Costruttore
boolean empty()
Testa se lo stack è vuoto
Object peek()
Restituisce l’oggetto in cima senza estrarlo
Object pop()
Restituisce l’oggetto in cima e lo estrae
Object push(Object elemento)
Inserisce l’oggetto elemento in cima allo stack
int search(Object o)
Restituisce la posizione di o nello stack
Object pop ()
Dà il primo elemento della lista e lo rimuove
int size()
Restituisce il numero di elementi presenti
Tab. 48 – I metodi della classe Stack per la gestione di una pila
METODO
EFFETTO
Queue s = new Queue();
Costruttore
Object peek()
Restituisce il prossimo da estrarre senza estrarlo
Object remove()
Restituisce il prossimo da estrarre e lo estrae
Boolean add(Object o)
Inserisce o e dà errore se coda piena
int size()
Restituisce il numero di elementi in coda
Tab. 49 – I metodi della classe Queue per la gestione di una coda
M. Malatesta - rel 54
06/10/2014
15
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
File e sistema operativo
Funzioni classe File
METODO
EFFETTO
File f = new File (percorso);
Crea un file f in percorso
File f = new File (percorso, nomefile);
Crea in percorso, un file f avente nome nomefile
File f = new File (directory, nomefile); Crea nella cartella directory un file f di nome nomefile
Crea un oggetto file nella cartella
Boolean createNewFile();
Verifica l'esistenza di un file
public boolean exists()
Verifica se l’oggetto è un file
public boolean isFile()
Verifica se l’oggetto è una directory
public boolean isDirectory()
Restituisce la lunghezza del file
public long length()
public boolean renameTo(dest)
Cambia il nome del file.
Cancella il file dal disco
public boolean delete()
Restituisce il nome del file
public String getName()
Restituisce il pathname completo del file
public String getPath()
Dà un array di stringhe con i nomi dei file in directory
String[] list()
Crea una directory e restituisce l’esito
boolean mkdir()
Tab. 50 – I principali metodi della classe File
Funzioni classe Runtime
METODO
EFFETTO
Process static Runtime getRuntime()
Dà l’oggetto Runtime associato all’applicazione
int availableProcessors()
Dà il numero di processori disponibili per la JVM
Dà la memoria disponibile per la JVM
long freeMemory()
long totalMemory()
Dà la memoria totale disponibile per la JVM
public Process exec (String command);
Esegue il comando command
public Process exec (String [] cmdArray);
Esegue i comandi contenuti in cmdArray
public Process exec (String command,
Esegue command con gli argomenti nell’ambiente
String [] envp);
envp.
public Process exec (String [] cmdArray,
Esegue command con gli argomenti cmdArray
String [] envp, File dir);
nella directory indicata.
Tab. 51 – I principali metodi della classe Runtime
Funzioni classe Process
METODO
EFFETTO
Dà il valore di uscita del sottoprocesso
abstract int exitValue()
Dà l’error stream del processo
abstract InputStream getErrorStream()
Dà l’input stream del processo
abstract InputStream getInputStream()
abstract OutputStream getOutputStream Dà l’output stream del processo
Causa il blocco del thread corrente fino a che
abstract int waitFor()
termini il processo rappresentato da questo oggetto
Uccide il sottoprocesso
abstract void destroy()
Tab. 52 – I principali metodi della classe Process
M. Malatesta - rel 54
06/10/2014
16
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe System
METODO
EFFETTO
String getProperty (String key )
Restituisce la proprietà richiesta del sistema
key
Effetto
key
Effetto
"os.arch"
Architettura del S.O.
"file.separator"
Separatore “\” o “/”
"os.name"
Nome del S.O.
"java.class.path"
Posizione file di Java
"os.version"
Versione del S.O.
"java.home"
Posizione di JRE
"path.separator" Separatore usato nel path
"java.vendor"
Nome fornitore di Java
"user.dir"
Directory di lavoro utente
"java.vendor.url"
URL fornitore di Java
"user.home"
Directory home utente
"java.version"
Num. versione di Java
"user.name"
Nome utente
"line.separator"
Separatore linee in text file
static long currentTimeMill()
Dà il tempo corrente in millisecondi dal 1/01/1970
static void exit (int status)
Termina l’esecuzione della JVM e restituisce status
Tab. 53 – I principali metodi della classe System
Thread
Funzioni classe Thread
METODO
EFFETTO
Restituisce il thread del processo corrente
Thread currentThread()
void setName (String tname)
Assegna al thread il nome tname
Restituisce il nome del thread
String getName()
void setPriority (int priority)
Assegna al thread il valore di priorità priority
Restituisce la priorità corrente
int getPriority()
void sleep (int msec)
Pone in attesa il thread per msec millisecondi
Avvia il thread
void start()
Specifica l’elaborazione che deve eseguure il thread
void run()
Cede il controllo ad un altro thread rimettendosi in coda
void yield()
Attende la terminazione del thread
void join()
Tab. 54 – I principali metodi della classe Thread
Gestione database
Funzioni classe Connection
EFFETTO
Rilascia la connessione con il DB e JDBC
Crea un oggetto Statement per inviare un
comando SQL al database
PreparedStatement prepareStatement (String sql)
Crea un oggetto PreparedStatement per
mandare un comando sql parametrizzato al
database
Tab. 55– I principali metodi della classe Connection
METODO
void close()
Statement createStatement()
M. Malatesta - rel 54
06/10/2014
17
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe DriverManager
METODO
EFFETTO
static Connection getConnection (String url)
Tenta connessione con un database di url
specificata
static Connection getConnection (String url, String Tenta connessione con un database di url
user, String pass)
specificata, mediante username user e
password pass
Tab. 56– I principali metodi della classe DriverManager
Funzioni classe Statement
EFFETTO
Rilascia l’oggetto Statement utilizzato dal
DB e da JDBC
int executeUpdate (String sql)
Esegue il comando sql che può contenere
INSERT, UPDATE o DELETE o comandi
DDL
ResultSet executeQuery (String sql)
Esegue il comando sql e restituisce
nell’oggetto ResultSet la tabella trovata
Tab. 57– I principali metodi della classe Statement
METODO
void close()
Funzioni classe ResultSet
EFFETTO
Rilascia l’oggetto ResultSet utilizzato dal DB e
da JDBC.
String getString (int columnIndex)
Restitisce come stringa il valore presente nella
colonna di posizione columnIndex del ResultSet
corrente.
String getString (int columnLabel)
Restitisce come stringa il valore presente nella
colonna columnLabel del ResultSet corrente.
int getInt (int columnIndex)
Restitisce come intero il valore presente nella
colonna di posizione columnIndex del ResultSet
corrente.
float getFloat (int columnIndex)
Restitisce come intero il valore presente nella
colonna di posizione columnIndex del ResultSet
corrente.
double getDouble (int columnIndex)
Restitisce come double il valore presente nella
colonna di posizione columnIndex del ResultSet
corrente.
Muove il cursore sulla riga successiva
boolean next()
Muove il cursore sulla riga precedente
boolean previous()
Muove il cursore sulla prima riga
boolean first()
Muove il cursore sull’ultima riga
boolean last()
Dà true se il cursore è sull’ultima riga
boolean isLast()
Dà il numero corrente di riga
int getRow()
Tab. 58– I principali metodi della classe ResultSet
METODO
void close()
M. Malatesta - rel 54
06/10/2014
18
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe PreparedStatement
EFFETTO
Esegue un qualunque comando SQL
Esegue la query presente nell’oggetto
ResultStatement e restituisce il ResultSet
generato dalla query
int executeUpdate()
Esegue il comando SQL (DDL o DML)
presente nell’oggetto PreparedStatement
void setDouble (int paramIndex, double x)
Pone il double x nel parametro indicato
void setFloat (int paramIndex, float x)
Pone il float x nel parametro indicato
void setInt (int paramIndex, int x)
Pone l’intero int x nel parametro indicato
void setString (int paramIndex, String x)
Pone la stringa x nel parametro indicato
Tab. 59– I principali metodi della classe PreparedStatement
METODO
boolean execute()
ResultSet executeQuery()
M. Malatesta - rel 54
06/10/2014
19
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Schemi di connessione a data base con comandi non parametrici
/* Esempio di connessione a database Access per comandi DDL e DML */
import java.sql.*;
public class nomeClasse
{
public static void main(String args[])
{
String sql = stringa comando DDL o DML;
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch (ClassNotFoundException cnf)
{ System.out.println("Classe non trovata");
System.out.println(cnf.getMessage());
}
String url = "jdbc:odbc:nomeDriver";
try{ Connection conn = DriverManager.getConnection(url, "", "");
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
stmt.close(); conn.close();
}
catch(SQLException e) { System.out.println("Tabella esistente"); }
}
}
/* Esempio di connessione a database Access per esecuzione query */
import java.sql.*;
public class nomeClasse
{ public static void main(String args[])
{ dichiarazione variabili di output var1, var2, ..., varN;
ResultSet rs;
String query = stringa contenente la query;
Statement stmt;
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch (ClassNotFoundException cnf)
{ System.out.println("Classe non trovata");
System.out.println(cnf.getMessage());
}
String url = "jdbc:odbc:nomeDriver";
try { Connection conn = DriverManager.getConnection(url, "", "");
stmt = conn.creatStatement();
rs=stmt.executeQuery(query);
while (rs.next())
{ var1 = rs.getXXX(posizione1);
……………….
varN = rs.getXXX(posizioneN);
Stampa tupla;
}
stmt.close();
conn.close();
}
catch(SQLException e) { System.out.println("Inesistente"); }
} // end main
} // end class
M. Malatesta - rel 54
06/10/2014
20
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Schemi di connessione a data base con comandi parametrici
/* Esempio di connessione a database Access per comandi parametrici DDL e DML */
import java.sql.*;
import java.io.*;
public class nomeClasse
{ public static void main(String args[])
{ dichiarazione variabili di input;
String sql = Stringa comando DDL o DML parametrico;
PreparedStatement stmt;
InputStreamReader In = new InputStreamReader (System.in);
BufferedReader tastiera = new BufferedReader(In);
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch (ClassNotFoundException cnf)
{ System.out.println("Classe non trovata");
System.out.println(cnf.getMessage());
}
String url = "jdbc:odbc:nomeDriver";
try { lettura variabili di input; }
catch (Exception e) { System.out.println("Errore in lettura"); }
try { Connection conn = DriverManager.getConnection(url, "", "");
stmt = conn.prepareStatement(sql);
caricamento dati in stmt mediante i metodi setXXX();
stmt.executeUpdate();
stmt.close();
conn.close();
}
catch(SQLException e) { System.out.println("Esistente"); }
}
}
/* Esempio di connessione a database Access per esecuzione query parametrica */
import java.sql.*;
import java.io.*;
public class nomeClasse
{ public static void m ain(String args[])
{ dichiarazione variabili di input;
dichiarazione variabili di output var1, …, varN;
ResultSet rs;
String query = stringa contenente la query parametrica;
PreparedStatement stmt;
InputStreamReader In = new InputStreamReader (System.in);
BufferedReader tastiera = new BufferedReader(In);
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch (ClassNotFoundException cnf)
{ System.out.println("Classe non trovata");
System.out.println(cnf.getMessage()); }
String url = "jdbc:odbc:nomeDriver";
M. Malatesta - rel 54
06/10/2014
21
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
try { lettura variabili di input; }
catch (Exception e) { System.out.println("Errore in lettura"); }
try { Connection conn = DriverManager.getConnection(url, "", "");
stmt = conn.prepareStatement(query);
caricamento dati in stmt mediante i metodi setInt(), setString() ecc;
rs=stmt.executeQuery();
rs.next();
var1 = rs.getXXX(posizione1);
……………….
varN = rs.getXXX(posizioneN);
stmt.close();
conn.close();
}
catch(Exception e) { Sstem.out.println("Inesistente"); }
}
}
Client – Server
Funzioni classe Socket
EFFETTO
Crea un socket non connessa
Crea un socket e lo onnette alla porta port
dell’indirizzo address
Socket (InetAddress address, int port,
Crea un socket sulla macchina locale di indirizzo
InetAddress localAddr, int localPort)
localAddr e porta localPort e loconnette alla porta port
dell’indirizzo address
Socket (String host, int port)
Crea un socket e loconnette con l’host di indirizzo host,
sulla porta port.
Restituisce la porta a cui è connessa il socket
int getLocalPort()
Dà l’indirizzo a cui il socket è connesso
InetAddress getInetAddress()
public Socket(String host, int port)
crea un socket di tipo stream e lo connette alla porta
port dell’host host
public InputStream getInputStream()
ritorna uno stream di input per leggere dal socket
public OutputStream getOutputStream()
ritorna uno stream di output per scrivere sul socket
public synchronized void setSoTimeout(int imposta un timeout per le operazioni di lettura dal
timeout)
socket (0 = attesa infinita)
public synchronized void close()
chiude il socket
void setReceiveBufferSize(int size)
Specifica dimensione buffer di ricezione
void setSendBufferSize(int size)
Specifica dimensione buffer di invio
METODO
Socket()
Socket (InetAddress address, int port)
Tab. 58– I principali metodi della classe Socket
M. Malatesta - rel 54
06/10/2014
22
a.s. 2012-13
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
Funzioni classe ServerSocket
EFFETTO
crea un socket server sulla porta port, che
accetta fino a 50 richieste di servizio
se port = 0, viene scelta una porta libera
public ServerSocket(int port, int backlog,
crea un socket server sulla porta port,
InetAddress bindAddr)
collegato all’indirizzo bindAddr ed accetta
fino a backlog richieste di servizio
public Socket accept()
mette il socket in condizioni di ascolto, in
attesa di richieste di connessione e
restituisce un socket per colloquiare con il
richiedente
public synchronized void close()
chiude il socket
Tab. 59– I principali metodi della classe ServerSocket
METODO
public ServerSocket(int port)
M. Malatesta - rel 54
06/10/2014
23
a.s. 2012-13
M. Malatesta - rel 54
06/10/2014
ISTITUTO TECNICO INDUSTRIALE STATALE
“E. Fermi” – Frascati (RM)
Indirizzo Informatica “Abacus”
Laboratorio di Informatica
Codice documento
LABINF.01
24