Correção dos erros do livro da Kathy

9 respostas
D

Falae pessoal, to estudando pra certificação e acabei de ler o livro da Kathy em portugues, fui anotando os erros e comparando com a versão original e vo colocar aqui, talvez interesse pros proximos q forem ler ele. Esses erros são da 2ª edição atualizada do livro Java 2: Certificação SUN para Programador e Desenvolvedor Java 2.

Capitulo 1
-Pag. 9 - Na tabela 1-2 em Maior valor do intervalo em int é 2(31)-1 e long 2(63)-1. La estão negativos.

Capitulo 4 -Pag.152 - 3º paragrafo - "...digamos, na linha 2" e não "linha 13". -pag.155 - Falta a saida q exibe o rastreamento de pilha quando a exceção do exemplo não é capturada:
%java TestEx
Exception in thread ?main? java.lang.ArithmeticException: / by zero
at TestEx.doMoreStuff(TestEx.java:10)
at TestEx.doStuff(TestEx.java:7)
at TestEx.main(TestEx.java:3)
-Pag.168 - "Não use assertivas, mesmo em metodos publicos...", não existe esse NÃO. O correto é "Use assertivas, mesmo em metodos publicos...". -Pag.172 - Penultimo item - "com o flag -esa ou -dsa" e não "-das".

Capitulo 5
-Pag.203 - Ultima linha tem class Horse {} falta nessa classe o codigo void Horse() {}.
-Pag.204 - Depois da tabela tem o codigo class Bar { depois disso tem void takeInt(int x) {} }.

Capitulo 6
-Pag.229 - Na 2ª linha do 4º paragrafo tem "...objeto String com o valor 'Java'..." em vez de 'Java' é pra ter 'Java Rules!'.

Capitulo 7
-Pag.269 - Na tabela no topo da pagina, na 2ª linha debaixo de x.equals(y)==true tem y.hasCode(), esse ultimo deveria estar na esquerda em baixo de x.hasCode()== ficando x.hasCode()==y.hasCode().
-Pag.280 - Na parte Cenario e solução tem "...tão bom quanto" e ja pula pra outra linha ficando sem sentido, depois disso poderia ter "...quanto eu quero." No lado tem "... o codigo esta tempo." Tambem ta sem sentido, esse 'tempo' pode ser riscado.
-Pag.281 - Nessa mesma tabela na primeira linha da pagina tem "e definindo-o como metodo", antes de metodo tem "retorno do", ficando "retorno do metodo".

Capitulo 8
-Pag.295 - No primeiro topico onde tem De dentro do codigo... tem um exemplo de codigo que nao tem nada a ver, em vez de tudo isso era pra ter somente MyInner mi = new MyInner();.

Capitulo 9 -Pag.329 - Onde tem Thread.MAX_PRIORITY(110) deveria ter so 10. -Pag.333 - No final da pagina tem um if que começa do nada, antes dele deveria ter private synchronized void makeWithdrawal(int amt) {. -Pag.336 - Na tabela no fim da pagina, nas 3 ultimas linhas o java.lang.Thread da esquerda deveria estar na direita abaixo de java.lang.Object. -Pag.340 - No meio do texto em "Pagina 530", erro deles, nao tem nada a ver. No codigo mais abaixo antes de public void run() { deveria ter class Operator extends Thread {. -Pag.342 - Simplesmente falta a classe Calculator:
class Calculator extends Thread {
   int total;

   public void run() {
      synchronized(this) {
         for(int i=0;i<100;i++) {
            total += i;
         }
         notifyAll();
      }
   }
}
É isso ae, qualquer coisa é so dizer. :wink:

9 Respostas

S

Putz cara… agora vejo que fiz bem em comprar o livro em inglês…

É sério que arrumaram tradução pra “threads”?

S

Ae Duende_Macabro valeu pelas dicas de erros, já corrigi todas no meu livro.

Segue abaixo alguns outros erros que eu encontrei.

---- >>>

Capitulo 5 - página 203

na Penultima declaração de class Horse() -> não é parenteses () e chaves {}

Capitulo 7

página 265

Tem a seguinte frase:

estaremos seguros no tempo de execução escrevendo o seguinte:

Observações para o exame   Lembre-se que os métodos

No meio dessas frases tem o seguinte codigo:

if ((o instanceof Moof) && (((Moof)o).getMoofValue() == this.moofValue)) {
  return true;
} else {
  return false;
}

página 270

na ultima tabela a terceira linha está assim:
TreeMap          TreeSet   L          inkedList
o certo é assim:
TreeMap          TreeSet              LinkedList

página 271

No final da terceira linha tem : LinkedHashTable, o certo é LinkedHashMap

---- >>>

Falow

M

Obrigado sakurai e Duende_Macabro pelas correções. Estão ajudando muito!!

“Schuenemann”:

É sério que arrumaram tradução pra “threads”?

Hã ? threads? eu só conheço “segmentos”.

Pior coisa que eu já fiz foi ter comprado essa tradução. Não devem nem conhecer editor de texto lá. É uma bagunça esse livro, tem até figura que se mete entre os códigos e os textos, do nada. E o ctrl+c ctrl+v pra copiar e colar os códigos também foi usado do início ao fim. Quem vê o capitulo 1, que está lá no site da editora vê um código todo identado, tabulação certinha. Mas os outros que eles não mostram, começam todos no mesmo espaço. É uma beleza pra ver onde começa e termina um bloco. O cara tem que se preocupar em aprender o que tá no livro e ficar atento pra ver se não tem erro no que está estudando. :yraiva:

J

Bahhhhh
livro traduzido é uma merda mesmo =\

Seria legal vcs abrirem um post. “Pq não comprar um Livro traduzido!”

e dai colocar essas traduções bem legais :wink:
hehehhee

Abraços!

M

capítulo 4: Página 138, pelo que eu tava vendo no original, no subtópico “Argumentos válidos para instruções if” nos 2 códigos estão faltando parênteses. Ficariam assim… O Primeiro if ((((x > 3) && (y < 2)) | doStuff())) e o Segundo if (((x > 3) && (y < 2) | doStuff()))
Os 2 códigos na tradução estão iguais.
Se bem que um par de parênteses das extremidades em ambos os códigos podem ser tirados, ou não ?

S

Você pode tirar um par de parenteses das extremidades dos dois exemplos que funciona, deixando assim:

O primeiro

O segundo

S

Concordo, a tradução do livro da Kathy deixa a desejar.

Acho que só existe um livro de certificação que não é tradução: comprei o Guia de Certificação em Java, autor Rafael. Se acharem outro me falem, está valendo à pena, ainda mais que os simulados são em inglês…

Bjs

S

Entendi errado.

S

Ae pessoal, mais alguns erros:

Capitulo 1 pagina 8

Na Figura 1-1 no final da pagina
no quadro tem:
byte: 7 bits podem representar 27 ou 128 valores :
O certo é
2 elevado 7 e não 27

short: 15 bits podem representar 215
O certo é
2 elevado a 15 e não 215


Capitulo 2 pagina 58

No meio tem a frase assim:
Já abordamos os efeitos da …
no final da segunda linha dessa frase tá assim:
o modificador final ou transient a
deve ficar assim o final da frase:
o modificador final, transient ou volatile a

Capitulo 2 pagina 64

Tá assim:

Agora imagine o que aconteceria se frogCount fosse uma variavel de instancia (em outras palavras, não fosse estática): Frog count is now 3

Está ao invertido as frases, o certo é assim:

Frog count is now 3 Agora imagine o que aconteceria se frogCount fosse uma variavel de instancia (em outras palavras, não fosse estática):


Capitulo 4 pagina 137, fizeram uma bagunça nessa pagina:

No segundo paragrafo, no começo da segunda linha ta assim:

o certo é:

Agora a bagunça, vc vai ver que os codigos estão em lugar errado e que está faltando um codigo:

A pagina deve ficar dessa maneira:

Até mesmo as chaves ... razões de legibilidade):
if (x > 3)
  y =2;
z += 8;
a = y + x;

Seja cuidadoso com codigos... recuado como vemos abaixo:
if (x > 3)
  y =2;
  z += 8;
  a = y + x;

Pode ser necessario ... antes de decidir o que fazer:
if (price < 300) {
  buyProduct();
} else {
  if (price < 400) {
    getApproval();
  }
  else {
    dontBuyProduct();
  }
}

Em algumas situações você ... como podemos ver nas linhas a seguir:
if(exam.done())
if(xam.getScore() < 0.61)
System.out.println("Try again");
else System.out.println("Java master!"); //which if does belong to?

No penultimo codigo tem no meio dele Pagina 214, pode riscar isso.

No penultimo e no ultimo codigo tem o comentario:
// Which if does this belong to?
Esse comentario deve ficar na frente da linha:
System.out.println(“Java master!”);

dessa maneira:
System.out.println(“Java master!”); //which if does belong to?


é isso ae pessoal, arrumem ae seus livros. Caso eu encontre mais algum erro eu posto aqui para vcs.

Falow

Criado 19 de fevereiro de 2005
Ultima resposta 28 de jul. de 2005
Respostas 9
Participantes 6