\select@language {brazil} \contentsline {chapter}{Pref\'acio}{xi} \contentsline {chapter}{\numberline {1}Teatro de Objetos}{1} \contentsline {section}{\numberline {1.1}Introdu\c c\~ao}{1} \contentsline {section}{\numberline {1.2}Disputa de P\^enaltis}{1} \contentsline {chapter}{\numberline {2}Hist\'oria da Computa\c c\~ao}{7} \contentsline {section}{\numberline {2.1}Hist\'oria da Computa\c c\~ao e Arquitetura do Computador}{7} \contentsline {section}{\numberline {2.2}E a evolu\c c\~ao do software?}{12} \contentsline {chapter}{\numberline {3}Conversor de Temperaturas}{15} \contentsline {section}{\numberline {3.1}Analogia entre dramatiza\c c\~ao da disputa de p\^enaltis e Programa\c c\~ao Orientada a Objetos}{15} \contentsline {section}{\numberline {3.2}Um exemplo real em Java: um conversor de Celsius para Fahrenheit}{16} \contentsline {section}{\numberline {3.3}Exerc\IeC {\'\i }cios:}{18} \contentsline {chapter}{\numberline {4}Testes Automatizados}{19} \contentsline {section}{\numberline {4.1}Testes}{19} \contentsline {section}{\numberline {4.2}Exerc\IeC {\'\i }cios}{22} \contentsline {section}{\numberline {4.3}Resolu\c c\~oes}{23} \contentsline {chapter}{\numberline {5}M\'etodos com v\'arios par\^ametros}{25} \contentsline {section}{\numberline {5.1}M\'etodos com v\'arios par\^ametros}{25} \contentsline {section}{\numberline {5.2}Exerc\IeC {\'\i }cios}{28} \contentsline {chapter}{\numberline {6}\texttt {if else} encaixados }{31} \contentsline {section}{\numberline {6.1}\texttt {if else} encaixados}{31} \contentsline {section}{\numberline {6.2}Exerc\IeC {\'\i }cios}{33} \contentsline {chapter}{\numberline {7}Programas com V\'arios Objetos}{37} \contentsline {section}{\numberline {7.1}Programas com V\'arios Objetos}{37} \contentsline {section}{\numberline {7.2}Exerc\IeC {\'\i }cio}{39} \contentsline {chapter}{\numberline {8}La\c cos e Repeti\c c\~oes}{41} \contentsline {section}{\numberline {8.1}La\c cos em linguagens de programa\c c\~ao}{41} \contentsline {section}{\numberline {8.2}O La\c co \texttt {while}}{42} \contentsline {section}{\numberline {8.3}N\'umeros primos}{44} \contentsline {section}{\numberline {8.4}Exerc\IeC {\'\i }cios}{45} \contentsline {chapter}{\numberline {9}Express\~oes e Vari\'aveis L\'ogicas}{49} \contentsline {section}{\numberline {9.1}Condi\c c\~oes como express\~oes}{49} \contentsline {section}{\numberline {9.2}Preced\^encia}{52} \contentsline {section}{\numberline {9.3}Exemplos}{52} \contentsline {section}{\numberline {9.4}Exerc\IeC {\'\i }cio:}{54} \contentsline {chapter}{\numberline {10}Mergulhando no ``while''}{57} \contentsline {section}{\numberline {10.1}Um pouco mais sobre primos.}{57} \contentsline {section}{\numberline {10.2}Uma biblioteca de fun\c c\~oes matem\'aticas.}{59} \contentsline {section}{\numberline {10.3}do...while}{60} \contentsline {section}{\numberline {10.4}Exerc\IeC {\'\i }cios}{60} \contentsline {chapter}{\numberline {11}Caracteres e cadeias de caracteres}{63} \contentsline {section}{\numberline {11.1}Um tipo para representar caracteres}{63} \contentsline {section}{\numberline {11.2}Cadeias de Caracteres (\texttt {String}s)}{65} \contentsline {section}{\numberline {11.3}Exerc\IeC {\'\i }cios:}{66} \contentsline {chapter}{\numberline {12}Manipulando n\'umeros utilizando diferentes bases}{67} \contentsline {section}{\numberline {12.1}Exerc\IeC {\'\i }cios}{68} \contentsline {chapter}{\numberline {13}Arrays (vetores)}{71} \contentsline {section}{\numberline {13.1}\emph {Arrays} (vetores)}{71} \contentsline {subsection}{\numberline {13.1.1}O atributo \texttt {length}}{73} \contentsline {subsection}{\numberline {13.1.2}Inicializa\c c\~ao de \emph {arrays}}{73} \contentsline {section}{\numberline {13.2}Cria\c c\~ao de Programas Java}{73} \contentsline {section}{\numberline {13.3}Exerc\IeC {\'\i }cios}{75} \contentsline {chapter}{\numberline {14}\texttt {for}, leitura do teclado e convers\~ao de Strings}{77} \contentsline {section}{\numberline {14.1}O comando \texttt {for}}{77} \contentsline {section}{\numberline {14.2}Leitura do Teclado}{78} \contentsline {section}{\numberline {14.3}Convers\~ao de String para n\'umeros}{79} \contentsline {section}{\numberline {14.4}Exerc\IeC {\'\i }cios}{79} \contentsline {chapter}{\numberline {15}La\c cos Encaixados e Matrizes}{81} \contentsline {section}{\numberline {15.1}La\c cos encaixados}{81} \contentsline {section}{\numberline {15.2}Matrizes (arrays multi-dimensionais)}{82} \contentsline {section}{\numberline {15.3}Exemplo: LIFE, o jogo da vida}{83} \contentsline {section}{\numberline {15.4}Exerc\IeC {\'\i }cios}{85} \contentsline {chapter}{\numberline {16}Busca e ordena\c c\~ao}{89} \contentsline {section}{\numberline {16.1}Busca}{89} \contentsline {section}{\numberline {16.2}Pondo ordem na casa}{90} \contentsline {section}{\numberline {16.3}Exerc\IeC {\'\i }cios}{92} \contentsline {chapter}{\numberline {17}Busca bin\'aria, fus\~ao e o que s\~ao as vari\'aveis}{93} \contentsline {section}{\numberline {17.1}Busca bin\'aria}{93} \contentsline {section}{\numberline {17.2}Fus\~ao}{94} \contentsline {section}{\numberline {17.3}O que guardam as vari\'aveis?}{95} \contentsline {section}{\numberline {17.4}Exerc\IeC {\'\i }cios}{96} \contentsline {chapter}{\numberline {18}Construtores e especificadores de acesso}{97} \contentsline {section}{\numberline {18.1}Construtores}{97} \contentsline {section}{\numberline {18.2}Especificadores de acesso}{100} \contentsline {section}{\numberline {18.3}Exerc\IeC {\'\i }cios}{101} \contentsline {chapter}{\numberline {19}Interfaces}{103} \contentsline {section}{\numberline {19.1}O Conceito de Interfaces}{103} \contentsline {section}{\numberline {19.2}Um primeiro exemplo}{103} \contentsline {paragraph}{Em tempo}{105} \contentsline {section}{\numberline {19.3}Implementando mais de uma interface por vez}{107} \contentsline {section}{\numberline {19.4}Um exemplo mais sofisticado}{108} \contentsline {section}{\numberline {19.5}A Import\^ancia de Interfaces}{112} \contentsline {section}{\numberline {19.6}Exerc\IeC {\'\i }cios:}{113} \contentsline {chapter}{\numberline {20}Heran\c ca}{117} \contentsline {section}{\numberline {20.1}O Conceito de Heran\c ca}{117} \contentsline {section}{\numberline {20.2}Terminologia de heran\c ca}{117} \contentsline {section}{\numberline {20.3}Implementa\c c\~ao de heran\c ca na linguagem Java}{118} \contentsline {section}{\numberline {20.4}Hierarquia de Classes}{120} \contentsline {section}{\numberline {20.5}Relacionamento ``\'e um''}{120} \contentsline {section}{\numberline {20.6}Resumo}{121} \contentsline {section}{\numberline {20.7}Exerc\IeC {\'\i }cios}{121} \contentsline {chapter}{\numberline {21}Javadoc}{123} \contentsline {section}{\numberline {21.1}Javadoc}{123} \contentsline {chapter}{\numberline {22}O C que h\'a em Java}{129} \contentsline {section}{\numberline {22.1}O C que h\'a em Java}{129} \contentsline {section}{\numberline {22.2}Detalhes de entrada e sa\IeC {\'\i }da}{131} \contentsline {section}{\numberline {22.3}Declara\c c\~ao de vari\'aveis}{131} \contentsline {section}{\numberline {22.4}Par\^ametros de fun\c c\~oes}{132} \contentsline {section}{\numberline {22.5}Um \'ultimo exemplo}{132} \contentsline {chapter}{\numberline {A}Utilizando o Dr. Java}{135} \contentsline {section}{\numberline {A.1}Introdu\c c\~ao}{135} \contentsline {subsection}{\numberline {A.1.1}Como obter, instalar e executar o \texttt {DrJava}}{135} \contentsline {section}{\numberline {A.2}Conversor de Temperatura simples}{136} \contentsline {section}{\numberline {A.3}Tratando erros}{138}