Introduzione Java è uno dei linguaggi per computer più importanti e più utilizzati al mondo e detiene tale primato da molti anni. A differenza di altri linguaggi per computer la cui influenza è sparita con il passare del tempo, Java si è rafforzato. Java è saltato in cima alla programmazione per Internet fin dalla prima versione e ogni versione successiva ha consolidato tale posizione. Oggi è ancora la prima scelta per lo sviluppo di applicazioni basate sul web. Java fa anche parte della rivoluzione degli smartphone perché viene utilizzato per la programmazione Android. In termini semplici, gran parte del mondo moderno è eseguito con codice Java. Un motivo importante del successo di Java è la sua agilità. Fin dalla versione originale 1.0, Java si è continuamente adattato ai cambiamenti nell’ambiente di programmazione e nel modo in cui lavorano i programmatori. Ancora più importante, non solo ha seguito le tendenze, ma ha contribuito a crearle. La capacità di Java di seguire i rapidi cambiamenti nel mondo dei computer è uno dei motivi fondamentali per cui ha avuto e continua ad avere tanto successo. Dalla prima uscita nel 1996, il presente volume è stato pubblicato molte volte, ogni volta riflettendo l’evoluzione in corso di Java. Questa è l’ottava edizione ed è stata aggiornata per Java SE 7, quindi contiene molto materiale nuovo. Per esempio, contiene la descrizione dei miglioramenti del linguaggio Project Coin, delle funzioni estese di NIO (NIO.2) e del Fork/Join Framework. In generale, le discussioni sulle nuove funzioni sono integrate nei LibroJava.indb XXIX 2/1/2012 11:59:16 AM XXX Introduzione capitoli esistenti, ma a causa delle molte aggiunte a NIO, questo è descritto in un capitolo a parte. Tuttavia la struttura generale del volume resta invariata. Se si conoscono le edizioni precedenti, ci si troverà a proprio agio con la presente. Un libro per tutti i programmatori Il presente volume è per tutti i programmatori, principianti o professionisti esperti. Il principiante troverà particolarmente utili le discussioni dettagliate e molti esempi. Le descrizioni approfondite delle funzioni più avanzate e delle librerie di Java sono adatte ai professionisti. Per entrambi offre una risorsa duratura e utile. Contenuti Il presente volume è una guida completa al linguaggio Java e ne descrive la sintassi, le parole chiave e i principi di programmazione fondamentali. Sono esaminate inoltre parti importanti della libreria API di Java. Il volume è suddiviso in quattro parti, ciascuna dedicata a un aspetto diverso dell’ambiente di programmazione Java. La Parte I presenta una guida dettagliata al linguaggio Java. Inizia con le basi, descrivendo elementi quali tipi di dati, operatori, dichiarazioni di controllo e classi. Passa quindi a ereditarietà, package, interfacce, gestione delle eccezioni e multithreading. Gli ultimi capitoli della Parte I descrivono annotazioni, enumerazioni, autoboxing e generic. Si introducono inoltre I/O e applet. La Parte II esamina gli aspetti fondamentali della libreria API Java standard. Tra gli argomenti si trovano stringhe, I/O, operazioni di rete, utility standard, il Collections Framework, applet, controlli basati sulla GUI, gestione delle immagini e concorrenza (compreso il nuovo Framework Fork/Join). La Parte III esamina tre importanti tecnologie Java: Java Beans, servlet e Swing. La Parte IV (disponibile in download all’indirizzo: http://www.ateneonline.it/ shildt8e) contiene due capitoli con esempi di utilizzi di Java. Il primo sviluppa numerose applet che effettuano diversi calcoli finanziari, quali il calcolo delle rate di un prestito o l’investimento minimo necessario per ottenere una rendita annuale desiderata. Il capitolo mostra inoltre come convertire tali applet in servlet. Il secondo capitolo sviluppa un download manager che gestisce lo scaricamento di file. Contiene le funzioni per avviare, arrestare e riprendere un trasferimento. Entrambi i capitoli sono adattamenti dal libro “The Art of Java”, scritto dall’autore insieme a James Holmes. LibroJava.indb XXX 2/1/2012 11:59:16 AM Introduzione XXXI Codice sul Web Il codice sorgente per tutti gli esempi del presente volume è disponibile gratuitamente sul Web all’indirizzo http://www.ateneonline.it/shildt8e. Note e consigli Infine, quando l’argomento lo richiede, i consigli su come operare o un approfondimento tecnico sono evidenziati tra parentesi quadre come indicato qui di seguito: Note importanti sono indicati in questo modo. Consigli, avvertimenti e trucchi sono indicati in questo modo. LibroJava.indb XXXI 2/1/2012 11:59:16 AM