Indice
Istallazione di Java - Uso delle librerie
G. Grossi
G. Grossi
Tutorial
Indice
Indice
1
Istallazione di Java 2 SDK
2
Uso dei package
G. Grossi
Tutorial
Indice
Indice
1
Istallazione di Java 2 SDK
2
Uso dei package
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Java 1.4.2
Java è disponibile per la famiglia di S.O. Microsoft Windows e
S.O. Linux (oltre a SUN):
Microsoft Windows 98 (edizioni 1 e 2);
Windows NT 4.0
Windows ME;
Windows 2000
Windows XP;
Linux
I requisiti minimi di sistema richiesto sono i seguenti:
processore Pentium 166MHz;
32 Megabytes di RAM;
120 Megabytes di spazio disponibile su disco.
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
File per l’installazione
I 2 file necessari per procedere all’istallazione sono scaricabili
dal sito della SUN e sono (nella versione più recente):
Java 2 SDK j2sdk-1 4 2 06-windows-i586.exe
contiene il programma di installazione di Java 2
SDK (reperibile dal sito della SUN all’indirizzo )
Documentazione j2sdk-1 4 2-doc.zip
contiene la documentazione delle librerie Java
(API - Application Programmer Interface) che sono
fondamentali per la programmazione.
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Albero delle directory
Una situazione titpica di istallazione è la seguente:
C:\
|
Programmi
|
j2sdk1.4.2_06
____________________|________________________
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bin lib include demo jre docs
|
|
| LICENSE
___|___
|
| COPYRIGHT
|
|
| README
api index
README.html
|
index.html
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Esecuzione dei programmi
I programmi (tools) forniti con Java (contenuti nella
directory bin) non prevedono un’interfaccia grafica
Devono essere eseguiti dall’interprete dei comandi di
Windows che è chiamato prompt
L’applicazione prompt è in genere eseguibile dal menu
Avvio ⇒ Programmi ⇒ Accessori
Appare una finestra (tipo DOS) in cui compare un cursore
lampeggiate dopo una stringa del tipo
C:\WINDOWS >
La stringa C:\WINDOWS > è chiamata prompt e indica la
directory corrente. Il cursore lampeggiante indica che
l’inteprete dei comandi è pronto a ricevere ed eseguire un
nuovo comando
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
La variabile di sistema PATH
Per utilizzare in modo più pratico i programmi presenti
nella directory bin è possibile utilizzare la variabile di
sistema PATH
Contiene un elenco di directory separatare da un carattere:
’;’ - nei sitemi Windows
’:’ - nei sitemi Unix (Linux)
Indica all’interprete dei comandi le directory cercare i
programmi eseguibili
In riferimento all’esempio presentato qui, occorre
aggiungere alla variabile PATH la directory
C:\Programmi\j2sdk1.4.2_06\bin
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
I package
In genere in un programa Java vengono utilizzate molte classi
che possono essere:
Classi fornite con l’ambiente di sviluppo chiamate API
(Application Programmer Interface)
Classi precedentemente sviluppate dal programmatore o
da altri
Classi che compongono il programma
Queste classi sono organizzate in librerie che, nel caso di Java,
prendono il nome di package
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Importare classi
Se in un programma Java si vuole utilizzare una classe che
appartene ad un package, bisogna informare esplicitamente il
compilatore e la macchina virtuale
Direttiva di importazione:
import nomeDellaClasse;
dove:
import: è una parola riservata del linguaggio
nomeDellaClasse: è il nome completo della classe che
include il nome del package e il nome della classe
la direttiva di importazione viene conclusa dal carattere ’;’
il package java.lang viene importato implicitamente
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Un esempio
import prog.io.ConsoleOutputManager;
import prog.io.ConsoleInputManager;
class BuonInizioATe {
public static void main(String [] args) {
ConsoleInputManager in = new ConsoleInputManager
ConsoleOutputManager out = new ConsoleOutputMana
String nome = in.readLine("Inserisci il tuo nome
out.println("Ciao " + nome + ", ti auguro una bu
}}
Questo programma utilizza le classi:
ConsoleOutputManager e ConsoleInputManager
che appartengono al package prog.io. Quindi devono
essere importate esplicitamente
String che appartiene al package java.lang
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Direttiva import
La direttiva di importazione informa il compilatore e la JVM su
dove trovare le classi utilizzate nel programma
Il compilatore ha bisogno delle informazioni contenute nel
bytecode della classe per verificare che all’interno del
nostro programma tale classe sia utilizzata in modo
corretto
La JVM ha bisogno del codice della classe durante
l’esecuzione
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Argomento della direttiva import
import nomeDellaClasse;
nomeDellaClasse indica un percorso nell’albero delle
directory. Java usa il carattere ’.’ come separatore delle
directory
Ad esempio in un sistema Windows
prog.io.ConsoleOutputManager
corrisponde al path:
prog\io\ConsoleOutputManager
Indica quindi che la classe ConsoleOutputManager da
importare memorizzata in una sottodirectory di nome
prog\io\
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
La variabile di sistema CLASSPATH
prog.io è una package (libreria), cioè un insieme di classi
raggruppate in base alle funzionalità
Dove si trova la libreria prog.io?
Cioè dove si trova la directory prog\io\?
In genere le librerie vengono raggruppate in una o più
sottodirectory, organizzate dal programmatore secondo un
qualche criterio
Il compilatore e la JVM devono sapere dove si trovano le
librerie per poter reperire, a partire dalle direttive di
importazione, le classi utilizzate in un programma
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
CLASSPATH (2)
Il compilatore e la JVM sanno giù dove trovare i package
forniti con la distribuzione di Java.
Per i package aggiunti dall’utente bisogna indicare dove si
trovano, definendo opportunamente la variabile di sistema
CLASSPATH
E’ una variabile di sistema. Cioè una variabile il cui valore è
memorizzata dal sistema operativo, e che viene utilizzata dal
compilatore e dalla JVM per reperire informazioni sull’ambiente
all’interno del quale vengono eseguiti. Contiene una lista di
directory separatare da un carattere:
; - nei sitemi Windows
: - nei sitemi Unix (Linux)
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
CLASSPATH (3)
Se organizziamo i nostri package in una directory di nome
C:\javalib
allora potremmo definire
CLASSPATH = .;C:\javalib;
In questo modo stiamo dicendo al compilatore e alla JVM che
quando importiamo una classe deve:
iniziare a cercarla in . (la directory corrente)...
... se non la trova deve provare a cercarla in C:\javalib
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Istallare i package prog
Fornisce classi utilizzate nel libro e classi per la gestione
dell’input/output
I package sono contenuti nel file prog.tar del CD ROM
Si tratta di un archivio da cui i file possono essere estratti
mediante WinZip (tar xfv in Unix)
di avere predisposto una directory di nome C:\javalib
dove conservare i package Java
Estraiamo i file dall’archivio all’interno di questa directory
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
La struttura delle directory
C:\
Documentazione
|
javalib
|
prog
____________________|___________________
|
|
|
|
|
Punto di ingresso
c02 c03
....
utili
|
docs
alla documentazione
|
|
|
io
_____|_____
... ...
...
|
|
|
|
index.html
...
____|____
|
|
|
Contengono i file
|
|
...
con il bytecode delle
| ConsoleInputManager.calss
ConsoleOutputManager.class
classi
Figura: Albero delle directory
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Compilatore e direttiva import
import prog.io.ConsoleOutputManager
Il compilatore:
Individua il nome relativo del file
prog\io\ConsoleOutputManager.class
Forma il nome completo giustapponendo quello relativo ai
percorsi specificati nella variabile CLASSPATH
Se
CLASSPATH = .;D:\mylib;C:\javalib;
cercherà nell’ordine i file
.\prog\io\ConsoleOutputManager.class
D:\mylib\prog\io\ConsoleOutputManager.class
C:\javalib\prog\io\ConsoleOutputManager.class
G. Grossi
Tutorial
Istallazione di Java
Uso dei package
Nome completo della classe
C:
Percorso specificato
dal CLASSPATH
....
javalib
....
prog
io
....
ConsoleOutputManager.class
Percorso specificato
dalla direttiva di
importazione
....
Figura: Path completo
G. Grossi
Tutorial