Académique Documents
Professionnel Documents
Culture Documents
Introduo
www.bolinhabolinha.com
Apresentao
Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Introduo ao Desenvolvimento de Interfaces Grficas Herana Mltipla Polimorfismo Classe Abstrata Interfaces Tratamento de Excees Arquivos Comunicao com Banco de Dados
Bibliografia
Livro texto
1) SANTOS, Rafael. Introduo Programao Orientada a Objetos usando : Java. 1 ed. Rio de Janeiro: Elsevier, 2008.
Complementar
DEITEL, H. M. & DEITEL, P. J., LISBOA, C. A . L. Java, como programar. 6 Ed. So Paulo: Pearson, 2006.
Metodologia e Avaliao
Metodologia
Aula expositiva Dinmicas de grupo Debates Exerccio em classe Laboratrio
Avaliao
40%
Atividades (3,0) - ATPS Avaliao (7,0)
60%
Atividades (3,0) - ATPS Avaliao Oficial (7,0)
Cronograma
Reviso
Diferencia maisculas de minsculas Nome do arquivo deve ser igual da classe Compilar
javac NomeDoPrograma.java
gerou o .class
java NomeDoPrograma
Comentrios
// /* bloco */ /** java doc */
Reviso
Escrever na tela
System.out.print System.out.println System.out.printf //semelhante ao C
Entrada de dados
import java.util.Scanner; //utiliza classe Scanner Scanner meuScanner = new Scanner(System.in); System.out.println(meuScanner.nextLine());
Declarao de variveis
tipo nome_da_varivel;
exemplo: double juros;
real
float double
texto
char String
lgico
boolean
Declarando
int numero; int numero2 = 10;
Operadores
atribuio
=atribui um valor ++ incrementa de 1 em 1, pode ser antes:
(++varivel) incrementa antes de usar (a++varivel) usa seu valor, depois incrementa
- +=
-=
*=
/=
Operadores
matmticos
* / % + multiplicao diviso resto adio subtrao igual diferente maior que maior ou igual a menor que menor ou igual a
lgico
! no
&&
igualdade
== != > >= < <= || ou
relacional
Atribuindo valores
nome_vetor[elemento] = valor;
meuVetor[0] = 10; meuVetor[1] = 20;
Construtores parametrizados
// Classe Lapis.java public class Lapis { private String cor; Lapis(String qualCor) { //Construtor com parmetro cor = qualCor; } public void trocarCor(String novaCor) { cor = novaCor; } public String mostrarCor() { return cor; } } //Programa TesteLapis.java class TesteLapis { public static void main(String[] args) { Lapis meuLapis = new Lapis("Amarelo"); System.out.println(meuLapis.mostrarCor()); } }
Polimorfismo
Sobrecarga de mtodos
public class Caneta { public escrevaNaTela(String texto) { System.out.println(texto); } public escrevaNaTela(String linha, String linha2) { System.out.println(linha1); System.out.println(linha2); } }
Utilizando
static public void main(String args[]) { Caneta bic1 = new Caneta() bic1.escrevaNaTela(estou escrevendo); bic1.escrevaNaTela(primeira linha,segunda linha); }
Herana
public class Pessoas { private String nome, sobreNome; private double peso,altura; . public class Alunos extends Pessoas { private String nomeCurso; private double semestre; . public class Professores extends Pessoas { private String nomeEspecializacao; private double valorHoraAula; private int numeroAulas; .
herana
Modificadores de Acesso
Public
Membros deste tipo so acessveis onde o programa tenha uma referncia a um objeto desta classe ou subclasse
Private
Somente so acessveis dentro da prpria classe No so herdados pelas subclasses
Protected
Nvel intermedirio entre public e private O membros protected de uma classe podem ser acessados pela classe, subclasse e outras classes do mesmo pacote (package)
Chamada Explcita
Criando as classes... //AVES private String cor, movimento; private int patas; public Aves() { } public Aves(String novaCor, String novoMovimento, int novaPatas) { cor = novaCor; patas=novaPatas; movimento=novoMovimento; } //VOADORAS public class AvesVoadoras extends Aves { public AvesVoadoras(String corAve, int patasAve) {
super(corAve, voar,patasAve);
} //PAPAGAIOS public class Papagaios extends AvesVoadoras { public Papagaios(String corPapagaio) {
super(corPapagaio, 2);
} // Quando instanciarmos um objeto do tipo papagaio, automaticamente ele tera 2 patas e seu movimento ser voar
Polimorfismo
public class Empregados { // atributo protected, pois fao uso deste na subclasse protected double salario; public void setSalario(double novoSalario){ salario = novoSalario; } public double getSalario() { return salario; } } public class EmpregadoComissionado extends Empregados { private double valorVendas, comissao; polimorfismo public double getSalario() { return this.salario + (valorVendas*comissao/100); } }
polimorfismo
Exerccios de reviso
1-) Crie uma superclasse abstrata chamada Avaliao, com as seguintes caractersticas: Atributos:- nomeDisciplina - bimestre - nota - pesoDaAvaliao Mtodos:- set e get para todos os atributos. - getNotaReal, dever retornar o valor de sua nota final (nota*peso/100) Construtores: - sem parmetros - receba como parmetros o bimestre e o pesoDaAvaliao. 2-) Crie a subclasse AvaliaoParcial, que alm das caractersticas herdadas tenha: Atributos: - pontosDeExerccios Mtodos: - set e get para o atributo pontosDeExerccios - getNotaReal: dever retornar o valor da nota final (nota*peso/100 + pontos de bonificao). Construtor: - dever chamar explicitamente o construtor da classe pai, atribuindo o valor 4 para o peso. ATENO: Tenha preocupao com as entradas dos usurios
10