2 – orientação a objetos na prática · orientação a objetos na prática prof josé rui ......
TRANSCRIPT
Prof José Rui2. Orientação a objetos na prática
Sumário
Capítulo 1 – Introdução e conceitos básicos
1.4 Orientação a Objetos
1.4.1 Classe
1.4.2 Objetos
1.4.3 Métodos e atributos
1.4.4 Encapsulamento
1.4.5 Métodos get e set
Capítulo 2 – Orientação a objetos na prática
2.1 Linguagem JAVA
Prof José Rui2. Orientação a objetos na prática
Java - O que é?
● Linguagem de Programação
● Todos os programas Java são compilados e interpretados
● O compilador transforma o programa em bytecodes independentes de plataforma
● O interpretador testa e executa os bytecodes
Prof José Rui2. Orientação a objetos na prática
Java - O que é?
● Linguagem de Programação
● Todos os programas Java são compilados e interpretados
● O compilador transforma o programa em bytecodes independentes de plataforma
● O interpretador testa e executa os bytecodes
Prof José Rui2. Orientação a objetos na prática
Java - O que é?
● Linguagem de Programação
● Cada interpretador é uma implementação da JVM - Java Virtual Machine (ferramenta, browser, hardware)
● “Write Once, Run Anywhere”
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
ComentáriosComentários
– /* texto */
– O compilador ignora tudo entre /* e */
– /** documentacao */
– Indica um comentário para documentação. Utilizado pela ferramenta javadoc
– // texto
– O compilador ignora todos os caracteres de // até o final da linha
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
Tipos de dadosTipos de dados
● Inteiros: byte / short / int / long
● Reais: float / double
● Outros: char / boolean
boolean 08 bits true ou falsechar 16 bits '\u0000' a '\uFFFF'byte 08 bits -128 a 127short 16 bits -32.768 a 32.767int 32 bits -2.147.483.648 a 2.147.483.647long 64 bits até 9.223.372.036.854.775.807float 32 bits até 3.40292347E+38double 64 bits até 1.7976931348623157E+308
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
Nomes de variáveisNomes de variáveis
● Série de caracteres Unicode
● Não pode ser palavra chave
● Não pode ser nome de outra variável ou classe
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
InicializaçãoInicialização
int i = 10;
char c;
c = ‘X’;
Variáveis finaisVariáveis finais
● final float pi = 3.14159;
● (final também pode ser utilizado para métodos. Os métodos finais não podem ter subclasses)
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Atribuição: =
● Aritméticos: + - * / %
● Unários: ++ --
● Lógicos: = = != < > <= >=
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Condicionais
if-else / switch-case (break)
● Laço
for / while / do-while
● Exceção
try-catch-finally (throw)
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Condicionais: if-else
1 ...2 int a;3 4 if(a < 10){5 soma = soma + a; 6 }else{7 soma = soma a ;8 }9 10 ...
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Condicionais: switch-case (break)
1 ...2 char c;3 4 switch(c){5 case '0':6 System.out.println("Escolheu opção 0");7 break;8 9 case '1':10 System.out.println("Escolheu opção 1");11 break;12 13 default:14 System.out.println("Demais opções");15 16 };17 ...
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Laço: for
1 ...2 int soma;3 4 for(int i=0; i < 10; i++){5 soma = soma + i;6 }7 8 ...
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
OperadoresOperadores
● Laço: do-while
1 ...2 int soma, i;3 i = 0; 4 do{5 soma = soma + i;6 i++;7 }while(i < 10);8 ...
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
VetoresVetores
● Declaração
int[ ] vet;
● Inicialização
vet = new int[10];
● Declaração e inicialização (elemento de 0 a 9)
int[ ] vet = new int[10];
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
StringString
● Declarações e atribuições
● String cde = “cde”;
● char data[ ] = { ‘a’, ‘b’, ‘c’ };
● String str = new String( data );
● String cc = “ab”+cde;
● As strings podem ser concatenadas através do operador +
● As strings não podem ser alteradas
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
String – alguns métodos “natos”String – alguns métodos “natos”
.substring()
.startsWith()
.endsWith()
.length()
.toUpperCase()
.toLowerCase()
.replace()
.charAt()
.trim
.equals()
.compareTo()
.equalsIgnoreCase()
.toString()String.valueOf()
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
O método O método mainmain
● Quando o interpretador Java executa uma aplicação, ele começa chamando o método main
● O método main então chama todos os outros métodos necessários para executar a aplicação
1 class HelloWorld{23 private static void main( String[] args ) {4 System.out.println( “ola mundo!” );5 }6 }7
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
O método O método mainmain
● Quando o interpretador Java executa uma aplicação, ele começa chamando o método main
● O método main então chama todos os outros métodos necessários para executar a aplicação
1 class HelloWorld{23 private static void main( String[] args ) {4 System.out.println( “ola mundo!” );5 }6 }7
– Note que – O método main está dentro de uma classe!
– Note que – O método main está dentro de uma classe!
Prof José Rui2. Orientação a objetos na prática
Java – A linguagem
O método O método mainmain
● Quando o interpretador Java executa uma aplicação, ele começa chamando o método main
● O método main então chama todos os outros métodos necessários para executar a aplicação
1 class HelloWorld{23 private static void main( String[] args ) {4 System.out.println( “ola mundo!” );5 }6 }7
– Note que – O método main está dentro de uma classe!
– Note que – O método main está dentro de uma classe!
Em java, tudo é feito por meiode classes
Em java, tudo é feito por meiode classes
Prof José Rui2. Orientação a objetos na prática
Java – Entrada de dados
Classe ScannerClasse Scanner
● Pertence ao pacote java.util.Scanner
● É a classe que captura os dados inseridos via teclado
– Como toda classe é necessário instânciá-la
– Passando como parêmetro o objeto de entrada System.in
– Ex:
Prof José Rui2. Orientação a objetos na prática
Java – Entrada de dados
Classe ScannerClasse Scanner
● Pertence ao pacote java.util.Scanner
● É a classe que captura os dados inseridos via teclado
– Como toda classe é necessário instânciá-la
– Passando como parêmetro o objeto de entrada System.in
– Ex:1 import java.util.Scanner;23 class Teste{45 private static void main( String[] args ) {6 Scanner ler = new Scanner(System.in);7 int num1;8 System.out.print("Entre com o número: ");9 num1 = ler.nextInt();10 System.out.printf("O dobro é: %d", 2*num1);11 }12 }
Prof José Rui2. Orientação a objetos na prática
Java – Entrada de dados
Classe ScannerClasse Scanner
● Para fazer a leitura propriamente dita:
– Chama variável + next<tipo>
– Neste caso: nextInt()
1 import java.util.Scanner;23 class Teste{45 private static void main( String[] args ) {6 Scanner ler = new Scanner(System.in);7 int num1;8 System.out.print("Entre com o número: ");9 num1 = ler.nextInt();10 System.out.printf("O dobro é: %d", 2*num1);11 }12 }
- nextInt(); //inteiro- nextDouble(); //real- next(); //string ...
Prof José Rui2. Orientação a objetos na prática
Java – Entrada de dados
Classe ScannerClasse Scanner
● Ao rodar
1 import java.util.Scanner;23 class Teste{45 private static void main( String[] args ) {6 Scanner ler = new Scanner(System.in);7 int num1;8 System.out.print("Entre com o número: ");9 num1 = ler.nextInt();10 System.out.printf("O dobro é: %d", 2*num1);11 }12 }
Entre com o número: 42O dobro é: 84
Prof José Rui2. Orientação a objetos na prática
Java – Saída de dados
Saída de dadosSaída de dados
● Imprime na tela o conteúdo entre aspas
1 import java.util.Scanner;23 class Teste{45 private static void main( String[] args ) {6 Scanner ler = new Scanner(System.in);7 int num1;8 System.out.print("Entre com o número: ");9 num1 = ler.nextInt();10 System.out.printf("O dobro é: %d", 2*num1);11 }12 }
Prof José Rui2. Orientação a objetos na prática
Java – Saída de dados
Saída de dadosSaída de dados
● Imprime na tela o conteúdo entre aspas
● Linha 10: para imprimir uma variável junto de um texto...
1 import java.util.Scanner;23 class Teste{45 private static void main( String[] args ) {6 Scanner ler = new Scanner(System.in);7 int num1;8 System.out.print("Entre com o número: ");9 num1 = ler.nextInt();10 System.out.printf("O dobro é: %d", 2*num1);11 }12 }
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto > Próximo
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto > Próximo
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto > PróximoDê o nome para seu projetoDê o nome para seu projeto
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto > Próximo
Dê o nome para seu projeto
Seu projeto também será uma classe!
Dê o nome para seu projeto
Seu projeto também será uma classe!
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Criando um novo projeto
● Abra o Netbeans > Novo Projeto > Próximo >Finalizar
Marque esta opção!
● Ela cria automáticamenteo método main
Marque esta opção!
● Ela cria automáticamenteo método main
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Projeto criado!
Nome do projetoNome do projeto
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Projeto criado!
Pacote...Pacote...
● Já vem com o nome do projeto(pode mudar)
● Cada pacote é uma pasta dentro do seu diretório
● Criar pacotes é boa prática de programação
● Já vem com o nome do projeto(pode mudar)
● Cada pacote é uma pasta dentro do seu diretório
● Criar pacotes é boa prática de programação
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Projeto criado!
Arquivo java onde está a mainArquivo java onde está a main
● Lembrando que este método foi criadoautomaticamente
● Normalmente é aqui que serão declaradas e instânciadas as suas classes
● Lembrando que este método foi criadoautomaticamente
● Normalmente é aqui que serão declaradas e instânciadas as suas classes
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Antes de criar a classe, vamos criar um pacote para colocar todas as nossas classes
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Antes de criar a classe, vamos criar um pacote para colocar todas as nossas classes
● Clique com botão direito sobre “Pacotes de código fonte”
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Antes de criar a classe, vamos criar um pacote para colocar todas as nossas classes
● Clique com botão direito sobre “Pacotes de código fonte>novo> pacote”
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Clique com botão direito sobre “Pacotes de código fonte>novo> pacote”
● Dê o nome para este pacote.
– Como é um pacotes de classes vou colocar este nome!
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Clique com botão direito sobre “Pacotes de código fonte>novo> pacote”
● Dê o nome para este pacote.
– Como é um pacotes de classes vou colocar este nome!
– Esta cinza porque ainda não tem nenhuma classe dentro...
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Agora sim, vamos criar nossa classe Roda
● Clique com botão direito no pacote “classes > novo > Classe Java”
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Agora sim, vamos criar nossa classe Roda
● Clique com botão direito no pacote “classes > novo > Classe Java”
Preencha o nome...Preencha o nome...
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Pronto, agora é só começar a programar
– Basta fazer os atributos e os métodos
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Pronto, agora é só começar a programar
– Basta fazer os atributos e os métodos
● Note como fica mais organizado!● Note como fica mais organizado!
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Vamos criar uma classe “Roda”
● Pronto, agora é só começar a programar
– Basta fazer os atributos e os métodos
● Note como fica mais organizado!● Note como fica mais organizado!
● Sempre que for criar uma nova classe, coloque neste pacote..
● Sempre que for criar uma nova classe, coloque neste pacote..
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Chamando a classe na MAIN
● É necessario, declarar, instânciar
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Chamando a classe na MAIN
● É necessario, declarar, instânciar
● Mas note que ainda tem erros...● Mas note que ainda tem erros...
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Chamando a classe na MAIN
● É necessario, declarar, instânciar
● Mas note que ainda tem erros...● Isso porque falta incluir o pacote
● Mas note que ainda tem erros...● Isso porque falta incluir o pacote
Prof José Rui2. Orientação a objetos na prática
Java - NetBeans
Chamando a classe na MAIN
● É necessario, declarar, instânciar
● Mas note que ainda tem erros...● Isso porque falta incluir o pacote● Agora pronto! Os erros sumiram...
● Mas note que ainda tem erros...● Isso porque falta incluir o pacote● Agora pronto! Os erros sumiram...
Prof José Rui2. Orientação a objetos na prática
Orientação a objetos
Exercício
● Faça a classes para os modelo “Cliente”
– Não se esqueça dos métodos get e set
– Faça um método para imprimir os dados do cliente
● Na main instâncie um objeto da classe cliente;
● Use a classe Scanner para que o usuário possa preencher os atributos da classe cliente