University Logo

Università
di Padova

Diploma in Ingegneria Informatica
Corso di Fondamenti di Informatica 2
2 Moduli

A.A. 2001/20012

Versione 1.00 27/09/2001

Errata corrige dei testi base


Arnold-Gosling
Java 2 i fondamenti
Goodrich-Tamassia

Pagina principale Torna alla pagina principale


Errata corrige del testo base Java (vedi Arnold-Gosling)

N.B. Il numero di riga positivo va conteggiato dalla prima riga in alto della pagina, quello negativo dall'ultima in basso a ritroso.

L'errata corrige delle versioni in inglese, da cui è stata in parte ricavata questa della versione italiana, si trovano al sito della Sun. Per l'errata corrige delle versioni inglesi seconda e terza, vedere ancora il sito Sun.


Capitolo Pagina Riga Errata Corrige
1 14 6-8 [solo un metodo statico può accedere ad un campo statico [in realtà vi possono accedere sia metodi statici che non; ad un campo d'istanza vi può invece accedere solo un metodo non statico]
2 29 19 alla classe Car [omettere]
3 51 -12 super.valueOf( Object oldValue = super.valueOf(
56 -9 di metodi non statici di metodi statici
59 -11 That sref = super [Java 1.1.x non accetta l'uso di super come parola chiave isolata, ma solo nella forma qualificata per riferire i membri, acmpi e metodi, della superclasse. D'altra parte l'istanza di superclasse non esiste distinta da quella della sottoclasse, essendo in quest'ultima incorporata come sottoparte. Conseguentemente un riferimento ai campi della supercalsse può tranquillamente avvenire, purché originariamente non privati, utilizzando il riferimento this. Quindi l'assegnazione di questo esempio può essere sostituita da] That sref=this;
60 5 class NoExtending final class NoExtending
64 8 alcuni oggetti alcuni metodi
65 -20 fornisce un metodo Clo fornisce un metodo clo
66 -14 Object Clone { Object clone throws CloneNotSupportedException {
66 -13 return super.clone() throws CloneNotSupportedException return super.clone()
68 -9 no attirare no attivare
4 84 16 implementante implementare
5 107 1 IndexOutOfBoundException IndexOutOfBoundsException
6 121 15 else [portare questa parola chiave al livello di indentazione del primo if in modo da rendere evidente la spiegazione]
121 -16 for (int i = 0; i < values.length; i++) for (int i = 0; i < values.length; i++) {
121 -12 sum = values[0] [inserire tra riga -12 e riga -11 la parentesi } che chiude esplicitamente il blocco for]
122 6 if/else if/else in un loop
7 132 [1.08] 10-11 Tutte le eccezioni definite dal programmatore sono estensioni di Exception, e sono quindi eccezioni controllate [Si tratta di una affermazione un po' azzardata. Per un commento più ampio si veda una FAQ]
133 20 (name, this) (name, newValue)
9 159 -2 start la macchina virtuale
180 -6 getCurrentThread currentThread
10 186 7 di quanto che ci di quanto ci
11 189 [1.08] -3 434 chars, 109 spaces 434 caratteri, 109 spazi
200 22 PipedInputStream PipedOutputStream
200 23 PipedOutputStream PipedInputStream
12 219 -4 nextElement() [a rigore, in base alla spiegazione, occorrerebbe aggiungere alle dichiarazione di nextElement()la clausola throws NoSuchElementException. Per altro il sorgente dell'interfaccia java.util.Enumeration non include per questo metodo la suddetta clausola. Se poi si guarda, ad esempio, il sorgente di java.util.HashTable che implementa il metodo, pur sollevando in un caso l'eccezione (con l'istruzione throw) non include la clausola throws dopo il prototipo. Questo è probabilmente da imputare al fatto che comunemente si evita di incorrerere nella condizione che solleva l'eccezione perché si fa usualmente condizionare la chiamata a nextElement() dal risultato della chiamata hasMoreElements(). In questo modo si evita di dover inserire la chiamata a nextElement() in un blocco try-catch, semplificando il codice. [1.07] Queste valutazioni portano a definire NoSuchElementException come eccezione non controllata (è infatti derivata da RuntimeException), da cui come detto segue che la clausola throws non deve comparire.]
221 4 return null throw new NoSuchElementException() [in armonia con il precedente commento]
223 5 Object.equal Object.equals
229 2 mente sono mento sono
236 8 che deve essere almeno 1900 . L'anno effettivo sarà year+1900.
237 -5--4 tra i valori 0.0 (compreso) e 1.0 (escluso). tra i due valori Long.MIN_VALUE e Long.MAX_VALUE compresi. [1.10]
238 3 tra i due valori Double.MIN_VALUE e Double.MIN_VALUE compresi. tra i valori 0.0 (compreso) e 1.0 (escluso).
13 250 2 dell'oggetto, dell'oggetto (ad esclusione della classe Character che non l'ha).
250 -8--6 [spiegazione di digit] [si prenda per buona quella di pag. 252
252 17 digit(char ch, radix) digit(char ch, int radix)
252 21-23 [spiegazione di forDigit] [si prenda per buona quella di pag. 250
14 261 8 System.exec Runtime.exec
261 20-21 precedente seguente
267 21 per i tipi float e double per il tipo float e (long)floor(x+0.5) per il tipo double
Appendice A 288 5 funzione EE funzione ee

Indice Torna all'indice


Errata corrige del testo base Java 2 (vedi Java 2 i fondamenti)

Vedi http://www.horstmann.com/corejava/bugs.html


Errata corrige del testo base Algoritmi (vedi Goodrich-Tamassia)

Vedi http://www.cs.brown.edu/courses/cs016/book/textbook/errata.html

Copia locale

IndiceTorna all'indice


Indice Torna all'indice Pagina principaleTorna alla pagina principale