ebook img

Desbravando Java e Orientação a Objetos: Um guia para o iniciante da linguagem PDF

222 Pages·2014·4.6 MB·Portuguese
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Desbravando Java e Orientação a Objetos: Um guia para o iniciante da linguagem

© CasadoCódigo Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998. Nenhumapartedestelivropoderáserreproduzida,nemtransmitida,sem autorização prévia por escrito da editora, sejam quais forem os meios: fotográficos,eletrônicos,mecânicos,gravaçãoouquaisqueroutros. CasadoCódigo Livrosparaoprogramador RuaVergueiro,3185-8ºandar 04101-300–VilaMariana–SãoPaulo–SP–Brasil CasadoCódigo “ÀminhaesposaJordanaeaomaiorpresentequeumdiasonheireceber,nossa filhaKatherine.” –RodrigoTurini i CasadoCódigo Agradecimentos Nãoháoutramaneiradecomeçarestelivroquenãosejaagradecendoato- dosqueincentivaramecontribuíramdiretaouindiretamenteemsuaedição. VictorHarada,MaurícioAnicheeGuilhermeSilveiraforamalgunsdeles. FicaumagradecimentoespecialaoPauloSilveira,nãosópelasuadetal- hadarevisãoesuasdiversassugestõesemelhoriasparaesselivro, mastam- bémpelainfluênciadiretaquetememmeudiaadiaprofissional. Gostaria também de estender o agradecimento para toda equipe da Caelum. São profissionais exemplares que me incentivam a aprender e en- sinardiariamente. iii CasadoCódigo Sumário Sumário 1 Java 1 1.1 NossoprimeirocódigoJava . . . . . . . . . . . . . . . . . . . 1 1.2 Algumasregraseconvenções . . . . . . . . . . . . . . . . . . 3 1.3 Entendendoométodomain . . . . . . . . . . . . . . . . . . . 4 1.4 TrabalhandocomumaIDE . . . . . . . . . . . . . . . . . . . . 6 1.5 Acesseocódigodesselivroeentreemcontatoconosco . . . 9 2 Variáveisetiposprimitivos 11 2.1 Nossoprojeto. . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Declaraçãoeatribuiçãodevariáveis . . . . . . . . . . . . . . . 11 2.3 Tiposprimitivos . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.4 Castingdevalores . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.5 Adicionandocondicionais . . . . . . . . . . . . . . . . . . . . 18 2.6 Loopingsemaisloopings . . . . . . . . . . . . . . . . . . . . . 21 3 Orientaçãoaobjetos 29 3.1 Criandoummoldedelivros . . . . . . . . . . . . . . . . . . . 30 3.2 Criandoumnovométodo . . . . . . . . . . . . . . . . . . . . 34 3.3 Objetosparatodososlados! . . . . . . . . . . . . . . . . . . . 38 3.4 Entendendoaconstruçãodeumobjeto. . . . . . . . . . . . . 51 3.5 Vantagensdaorientaçãoaobjetos . . . . . . . . . . . . . . . . 53 v Sumário CasadoCódigo 4 Encapsulamento 55 4.1 LimitandodescontodoLivro. . . . . . . . . . . . . . . . . . . 55 4.2 Isolandocomportamentos . . . . . . . . . . . . . . . . . . . . 59 4.3 Códigoencapsulado . . . . . . . . . . . . . . . . . . . . . . . . 61 4.4 GetterseSetters . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.5 Definindodependênciaspeloconstrutor . . . . . . . . . . . . 67 5 Herançaepolimorfismo 75 5.1 Trabalhandocomlivrosdigitais . . . . . . . . . . . . . . . . . 75 5.2 Reescrevendométodosdasuperclasse . . . . . . . . . . . . . 80 5.3 RegrasprópriasdeumLivroFisico . . . . . . . . . . . . . . . 85 5.4 VendendodiferentestiposdeLivro . . . . . . . . . . . . . . . 87 5.5 Acumulandototaldecompras . . . . . . . . . . . . . . . . . . 91 5.6 Herançaoucomposição? . . . . . . . . . . . . . . . . . . . . . 94 6 Classeabstrata 95 6.1 QualotipodecadaLivro? . . . . . . . . . . . . . . . . . . . . 95 6.2 Minilivronãotemdesconto! . . . . . . . . . . . . . . . . . . . 98 6.3 Métodoabstrato . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.4 Relembrandoalgumasregras . . . . . . . . . . . . . . . . . . . 104 7 Interface 105 7.1 OcontratoProduto . . . . . . . . . . . . . . . . . . . . . . . . 108 7.2 DiminuindoacoplamentocomInterfaces . . . . . . . . . . . 112 7.3 NovasregrasdainterfacenoJava8 . . . . . . . . . . . . . . . 114 8 Pacotes 119 8.1 Organizandonossasclasses . . . . . . . . . . . . . . . . . . . . 119 8.2 Modificadoresdeacesso . . . . . . . . . . . . . . . . . . . . . 126 9 Arrayseexception 129 9.1 Trabalhandocommultiplicidade . . . . . . . . . . . . . . . . 129 9.2 Asdiferentesexceçõesecomolidarcomelas . . . . . . . . . 136 9.3 MuitasemuitasException . . . . . . . . . . . . . . . . . . . . 142 9.4 Tambémpodemoslançarexceções! . . . . . . . . . . . . . . . 147 vi CasadoCódigo Sumário 10 ConhecendoaAPI 151 10.1 Todoobjetotemumtipoemcomum . . . . . . . . . . . . . . 151 10.2 Wrappersdostiposprimitivos . . . . . . . . . . . . . . . . . . 161 10.3 Opacotejava.lang . . . . . . . . . . . . . . . . . . . . . . . . . 163 11 CollectionFramework 169 11.1 Otrabalhodemanipulararrays . . . . . . . . . . . . . . . . . 169 11.2 OrdenandonossaListdeprodutos . . . . . . . . . . . . . . . 178 11.3 Gerenciandocuponsdedesconto . . . . . . . . . . . . . . . . 182 11.4 java.util.Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 12 StreamsenovidadesdoJava8 193 12.1 OrdenandocomJava8 . . . . . . . . . . . . . . . . . . . . . . 193 12.2 forEachdoJava8. . . . . . . . . . . . . . . . . . . . . . . . . . 198 12.3 Filtrandolivrospeloautor . . . . . . . . . . . . . . . . . . . . 198 13 UmpoucodahistóriadoJava 203 13.1 Origemdalinguagem . . . . . . . . . . . . . . . . . . . . . . . 203 13.2 Escrevaumavez,rodeemqualquerlugar! . . . . . . . . . . . 204 13.3 Linhadotempo . . . . . . . . . . . . . . . . . . . . . . . . . . 205 14 Continuandoseusestudos 211 14.1 Entreemcontatoconosco . . . . . . . . . . . . . . . . . . . . 212 vii

Description:
Aprenda Orientação a Objetos com Java de forma simples e efetiva! Você compilará e executará seu próprio programa em algumas horas. Por que Java? Essa é uma das linguagens de programação mais utilizadas em todo o mundo, com 20 anos e atualmente mais de 9 milhões de desenvolvedores. O livro
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.