




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Engenharia de computação em Java e demais ambientes de programação
Tipologia: Manuais, Projetos, Pesquisas
1 / 199
Esta página não é visível na pré-visualização
Não perca as partes importantes!





























































































Professor Dr. Edson A. Oliveira Junior Professor Me. Rogério de Leon Pereira
GRADuAçãO
Reitor Wilson de Matos Silva Vice-Reitor Wilson de Matos Silva Filho Pró-Reitor de Administração Wilson de Matos Silva Filho Pró-Reitor de EAD Willian Victor Kendrick de Matos Silva Presidente da Mantenedora Cláudio Ferdinandi NEAD - Núcleo de Educação a Distância Direção de Operações Chrystiano Mincoff Coordenação de Sistemas Fabrício Ricardo Lazilha Coordenação de Polos Reginaldo Carneiro Coordenação de Pós-Graduação, Extensão e Produção de Materiais Renato Dutra Coordenação de Graduação Kátia Coelho Coordenação Administrativa/Serviços Compartilhados Evandro Bolsoni Gerência de Inteligência de Mercado/Digital Bruno Jorge Gerência de Marketing Harrisson Brait Supervisão do Núcleo de Produção de Materiais Nalva Aparecida da Rosa Moura Design Educacional Camila Zaguini Silva Fernando Henrique Mendes Nádila de Almeida Toledo Rossana Costa Giani Projeto Gráfico Jaime de Marchi Junior José Jhonny Coelho Editoração Robson Yuiti Saito Revisão Textual Ana Paula da Silva, Flaviana Bersan Santos, Jaquelina Kutsunugi, Keren Pardini, Maria Fernanda Canova Vasconcelos, Nayara Valenciano, Rhaysa Ricci Correa e Viviane Favaro Notari Ilustração Robson Yuiti Saito
CENTRO uNIVERSITÁRIO DE MARINGÁ. Núcleo de Educação a Distância: C Programação II (JAVA) / Edson A. Oliveira Junior; Rogério de Leon Pereira Reimpressão revista e atualizada, Maringá - PR, 2014. 199 p. “Graduação em Análise e Desenvolvimento de Sistemas - EaD”.
ISBN 978-85-8084-605- CDD - 22 ed. 005. CIP - NBR 12899 - AACR/
Ficha catalográfica elaborada pelo bibliotecário João Vivaldo de Souza - CRB-8 - 6828
Seja bem-vindo(a), caro(a) acadêmico(a)! Você está iniciando um processo de transformação, pois quan- do investimos em nossa formação, seja ela pessoal ou profissional, nos transformamos e, consequente- mente, transformamos também a sociedade na qual estamos inseridos. De que forma o fazemos? Criando oportunidades e/ou estabelecendo mudanças capa- zes de alcançar um nível de desenvolvimento compa- tível com os desafios que surgem no mundo contem- porâneo.
O Centro universitário Cesumar mediante o Núcleo de Educação a Distância, o(a) acompanhará durante todo este processo, pois conforme Freire (1996): “Os homens se educam juntos, na transformação do mundo”.
Os materiais produzidos oferecem linguagem dialó- gica e encontram-se integrados à proposta pedagó- gica, contribuindo no processo educacional, comple- mentando sua formação profissional, desenvolvendo competências e habilidades, e aplicando conceitos teóricos em situação de realidade, de maneira a inse- ri-lo no mercado de trabalho. Ou seja, estes materiais têm como principal objetivo “provocar uma aproxi- mação entre você e o conteúdo”, desta forma possi- bilita o desenvolvimento da autonomia em busca dos conhecimentos necessários para a sua formação pes- soal e profissional.
Portanto, nossa distância nesse processo de cres- cimento e construção do conhecimento deve ser apenas geográfica. utilize os diversos recursos peda- gógicos que o Centro universitário Cesumar lhe possi- bilita. Ou seja, acesse regularmente o AVA – Ambiente Virtual de Aprendizagem, interaja nos fóruns e en- quetes, assista às aulas ao vivo e participe das discus- sões. Além disso, lembre-se que existe uma equipe de professores e tutores que se encontra disponível para sanar suas dúvidas e auxiliá-lo(a) em seu processo de aprendizagem, possibilitando-lhe trilhar com tranqui- lidade e segurança sua trajetória acadêmica.
Prezado(a) acadêmico(a), é com grande satisfação que apresento a você o livro de Pro- gramação em Java II. Este material foi elaborado com o objetivo de contribuir em sua formação, especialmente a de desenvolvedor(a) de software. Sou o professor Edson A. Oliveira Junior, autor deste material. Você pode ter certeza que este material foi prepara- do com carinho especial para que você possa entender o que essa disciplina pode te tra- zer de benefício ao longo de sua vida como desenvolvedor(a) e/ou analista de sistemas.
Inicialmente, como você já deve ter lido e exercitado todos os conceitos básicos de Java no livro Programação em Java I, este livro abordará conceitos mais avançados de orien- tação a objetos como sobreposição e sobrecarga em Java. A sobreposição permite rede- fir o comportamento (implementação) de um método que foi herdado, possibilitando que a subclasse possua os dois comportamentos: o herdado e o implementado. Já a sobrecarga permite que você use um mesmo identificador (nome) para métodos e cons- trutores de uma mesma classe, mudando somente a assinatura destes.
A unidade II abordará classes abstratas e interfaces. As classes abstratas podem possuir métodos concretos (com implementação) e métodos abstratos (somente a assinatu- ra) sem fornecer uma implementação padrão. As subclasses concretas de uma classe concreta devem implementar os métodos concretos. Esta é uma forma de garantir que o método será implementado de acordo com a classe a qual se destina. Já interfaces possuem somente métodos abstratos, porém não fornecem suporte à característica de herança.
Na unidade III, você entenderá os elementos essenciais para se trabalhar com vários objetos de uma mesma classe ao mesmo tempo: arrays e coleções Java. Existem vários tipos de coleções, cada uma com um propósito e um conjunto de características pró- prias que são usadas em diversas situações diferentes.
A unidade IV abordará a criação de interfaces gráficas desktop por meio das API AWT e Swing, além de tratamento de exceções. Interfaces gráficas em Java envolvem o projeto e a construção de layouts para que os elementos gráficos de interação (botões, caixas, campos etc.) possam ser acomodados. Interfaces gráficas não podem dispensar o tra- tamento de exceções, caracterizadas por interrupções abruptas da execução de código Java, sem que o usuário possa ter a chance de interagir com o programa. Para tanto, iso- lamos esses códigos permitindo que o programa Java não seja simplemente abortado sem uma justificativa.
ApresentAção
PROGRAMAÇÃO II (JAVA)
Por fim, na unidade V, serão apresentados os conceitos de persistência de dados por meio das APIs JDBC e JPA. JDBC é o método tradicional de armazenamento de dados em um banco de dados. Já JPA permite mapear as classes Java para entidades de um banco de dados, facilitando a persistência dos dados.
Lembre-se sempre que programar é uma “arte moderna” em que aquele que detém o maior poder de abstração possível é aquele que melhor saberá desenvolver os seus pro- gramas.
Ótima leitura e sucesso em sua vida de desenvolvedor de software.
Prof. Dr. Edson A. Oliveira Junior
64 Comparando Interfaces e Classes Abstratas
66 Considerações Finais
uNIDADE III
73 Introdução
73 entendendo um Array
74 Declarando Arrays de objetos e de tipos primitivos
76 Construindo Arrays Unidimensionais
77 Construindo Arrays Multidimensionais
79 Inicializando Arrays
83 passando Arrays para Métodos
85 exemplos com Arrays
92 Visão Geral das Coleções
93 A Interface List
98 A Interface Set
103 A Interface Map
106 A Interface Queue
109 Considerações Finais
11
uNIDADE IV
115 Introdução
115 o Que é a Biblioteca Swing?
116 Criando um projeto no netbeans Ide
117 Criando um Contêiner Jframe
119 Adicionando Componentes Swing
120 Construindo a Interface
126 escrevendo o Código
134 tratamento de exceções
134 Captura de exceções
136 Definindo exceções
137 Hierarquia de exceções
138 Declaração de exceções e a Interface pública
140 Considerações Finais
UNIDADE
Professor Dr. Edson A. Oliveira Junior
soBreposIção e
soBreCArGA
■ Criar códigos com métodos que utilizam conceitos de sobreposição e sobrecarga.
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
■ O que é sobreposição
■ A anotação Override
■ A Reescrita do método toString() e equals()
■ Regras para sobreposição em Java
■ O que é sobrecarga
■ Exemplos de Sobrecarga
■ Conversões implícitas
■ Construtores com sobrecarga
SOBREPOSIÇÃO E SOBRECARGA
Reprodução proibida. Art. 1 8 4 d o Código Penal e Lei 9. 6 1 0 d e 1 9 d e f evereiro d e 1 9 9 8.
public class Aluno {
// colocamos aqui nossos atributos da classe aluno
int idAluno; String nome; String ra; String endereco;
// nosso método imprimeTitulo void imprimeTitulo(){ System.out.println(“Titulos do Aluno”); } }
Quadro 1: Classe Aluno com um simples método que será reescrito
public class AlunoGraduacao extends Aluno {
//criamos nosso atributo serie
String serie;
// criamos nosso método imprimeTitulo
void imprimeTitulo(){ System.out.println(“Titulo de Graduação”); }
}
Quadro 2: Classe estendendo a classe Aluno para usar a sobreposição
17
O que é Sobreposição
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
public class AlunoMestrado extends Aluno {
//criamos nosso atributo notaPosComp
double notaPosComp;
//criamos nosso método imrpimeTitulo
void imprimeTitulo(){ System.out.println(“Tiulo de Mestrado”); }
}
Quadro 3: Classe estendendo a classe Aluno para usar a sobreposição
19
A Anotação @Override
Reprodução proibida. Art. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
public class AlunoGraduacao extends Aluno {
//criamos nosso atributo serie
String serie;
//criamos nosso método reescrito imprimeTitulo @Override void imprimeTitulo(){ System.out.println(“Titulo de Graduação”); }
}
Quadro 6: Classe com a anotação @override
public class AlunoMestrado extends Aluno { //criamos nosso atributo notaPosComp double notaPosComp; @Override void imprimeTitulo(){ System.out.println(“Titulo de Mestrado”); } }
Quadro 7: Classe com a anotação @override
SOBREPOSIÇÃO E SOBRECARGA
Reprodução proibida. Art. 1 8 4 d o Código Penal e Lei 9. 6 1 0 d e 1 9 d e f evereiro d e 1 9 9 8.
A REESCRITA DO MéTODO TOSTRING ( )
public class Pessoa { //declaramos o atributo idPessoa int idPessoa; //declaramos o atributo nome da pessoa String nome; }
Quadro 8: Classe Pessoa para testar impressão sem o método toString()
public class TestaPessoa { public static void main(String[] args) { //cria o objeto do tipo pessoa Pessoa p1 = new Pessoa(); //passa um valor para o idPessoa p1.idPessoa = 1; //passa um valor para o nome da pessoa p1.nome = “João”; //imprime os dados do objeto pessoa System.out.println(p1); } }
Quadro 9: Classe com método main para testar a impressão sem o método toString( )