Java Básico Programação Orientada a...

47
Java Básico Programação Orientada a Objeto Marco Antonio, Arquiteto de Software – TJDF Novembro/2005

Transcript of Java Básico Programação Orientada a...

Page 1: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Java Básico

Programação Orientada a Objeto

Marco Antonio,Arquiteto de Software – TJDF

Novembro/2005

Page 2: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Classes em java

Uma aplicação Java é formada de centenas classes.Não é raro esse número chegar a milhares

Page 3: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Exemplo de classepublic class Lampada {

String estado = "desligada";

public void ligar(){

estado = "ligada";

}

public void desligar(){

estado = "desligada";

}

}

Identifique cada elemento dessa classe:estado

ligar

desligar

Page 4: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Criação de objetos

Objetos são criados apenas através da palavra-chave newA sintaxe é: MeuObjeto m = new MeuObjeto();

MeuObjeto: nome da classem: nome do objetonew MeuObjeto(): aloca espaço na memória

Page 5: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Fábrica de lâmpadaspublic class FabricaDeLampadas {

public static void main(String[] args) {

Lampada lampada1 = new Lampada();

Lampada lampada2 = new Lampada();

System.out.println(lampada1.estado);

System.out.println(lampada2.estado);

lampada1.ligar();

System.out.println(lampada1.estado);

System.out.println(lampada2.estado);

lampada1.desligar();

System.out.println(lampada1.estado);

System.out.println(lampada2.estado);

}

}

Page 6: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Assinatura do Método

A assinatura do método é definida pelo nome, pela quantidade e pelo tipo dos seus parâmetros.O método andar() sem parâmetros é diferente de andar(String x) com um parâmetro. Atenção, pois o nome do parâmetro não faz diferença. O método andar(String y) e o método andar(String abc) são iguais e não podem estar na mesma classe.

Page 7: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

PessoaNormal v1.0public class PessoaNormal {

public void andar() {

System.out.println("Eu vou apenas andar.");

}

}

Page 8: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste da PessoaNormal v1.0public class TesteDePessoaNormal {

public static void main(String[] args) {

PessoaNormal p = new PessoaNormal();

p.andar();

}

}

Page 9: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Mais métodos

Vamos acrescentar outros métodos mais específicos para a PessoaNormal.Tente abstrair a complexidade dos métodos. São vários métodos, várias linhas de código, mas todas representam a mesma idéia.

Page 10: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

PessoaNormal v1.1public class PessoaNormal {

public void andar() {

System.out.println("Eu vou apenas andar.");

}

public void andar(int quantidadeDeMetros) {

System.out.println("Eu vou andar " + quantidadeDeMetros + " metros.");

}

public void andar(String nomeDaCancao){

System.out.println("Eu vou andar e cantar " + nomeDaCancao);

}

public void andar(int quantidadeDeMetros, String nomeDaCancao) {

System.out.println("Eu vou andar " + quantidadeDeMetros + " metros e cantar " + nomeDaCancao);

}

}

Page 11: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Notação UML: PessoaNormal

Page 12: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste da PessoaNormal v1.1public class TesteDePessoaNormal {

public static void main(String[] args) {

PessoaNormal p = new PessoaNormal();

p.andar();

p.andar(50);

p.andar("Faroeste Caboclo");

p.andar(50, "Faroeste Caboclo");

}

}

Page 13: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Desafio

Crie a classe Televisao com o método desligar()Crie a classe de teste para a TelevisaoQuando o método desligar() for chamado na classe de teste, imprima na tela “A televisão foi desligada”Atualize a Televisao com um método que imprima na tela “A televisão vai ser desligada em xxx minutos”

Page 14: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Televisaopublic class Televisao {

public void desligar() {

System.out.println("A televisão foi desligada.");

}

public void desligar(int tempoEmMinutos) {

System.out.println("A televisão será desligada em " + tempoEmMinutos

+ " minutos.");

}

}

Page 15: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste da Televisaopublic class TesteDaTelevisao {

public static void main(String[] args) {

Televisao televisao = new Televisao();

televisao.desligar();

televisao.desligar(10);

}

}

Page 16: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Método com retorno

É muito comum que um objeto retorne alguma informação para o objeto chamador

Em um sistema bancário, para uma funcionalidade como o saque não é necessário que exista um retorno, pois o cliente saca o dinheiro e o sistema subtrai essa importância da conta do sacado

Quando o cliente deseja consultar o seu saldo, o sistema deve retornar essa informação para o terminal bancário que, por sua vez, irá mostrá-la na tela

Page 17: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

ContaCorrentepublic class ContaCorrente {

double saldo;

String numero;

public void deposita(double valorDepositado){

saldo = saldo + valorDepositado;

}

public void saca(double valorSacado){

saldo = saldo - valorSacado;

}

public double consultaSaldo(){

return saldo;

}

}

Page 18: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

TerminalBancariopublic class TerminalBancario {

public static void main(String[] args) {

ContaCorrente conta = new ContaCorrente();

conta.deposita(1500.5);

System.out.println("Saldo atual: " + conta.consultaSaldo());

conta.saca(453.3);

System.out.println("Saldo depois do saque: " + conta.consultaSaldo());

}

}

conta.consultaSaldo(): essa expressão representa o valor do atributo saldo (1047.2)

Page 19: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Método de Acesso

Uma técnica bastante utilizada para construir as classes é utilizar o modificador private para todos os atributos definidos na classe, e criar os métodos de acesso getters e setters.O método get é utilizado para recuperar algum atributo.O método set é utilizado para atribuir valor a algum atributo.

Page 20: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Pessoapublic class Pessoa { private String nome; private String endereco; private String telefone; public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getTelefone() { return telefone; } public void setTelefone(String telefone) { this.telefone = telefone; }}

Page 21: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Notação UML: Pessoa

Page 22: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste da Pessoapublic class TesteDePessoa {

public static void main(String[] args) {

Pessoa p = new Pessoa();

System.out.println("Atribuindo valores...");

p.setNome("Marco Antonio");

p.setEndereco("Taguatinga");

p.setTelefone("33521134");

System.out.println("Imprimindo valores...");

System.out.println("Nome: " + p.getNome());

System.out.println("Endereço: " + p.getEndereco());

System.out.println("Telefone: " + p.getTelefone());

}

}

Page 23: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Herança

Podemos ter uma classe Pessoa com todos os seus atributos principais (nome, endereco, etc)

PessoaFisica seria sub-classe (ou classe-filha) de Pessoa

Dessa forma, Pessoa seria a super-classe de PessoaFisica

PessoaFisica seria especialização de Pessoa e o inverso seria uma generalização (Pessoa é uma generalização de PessoaFisica)

Page 24: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Notação UML: PessoaFisica

Page 25: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Outro exemplo

Um Bebe é uma PessoaNormal, dessa forma:

Bebe tem os mesmos métodos/atributos públicos que PessoaNormal

Page 26: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Bebepublic class Bebe extends PessoaNormal {

public void andar(){

System.out.println("Eu vou apenas engatinhar.");

}

public void andar(int quantidadeDeMetros) {

System.out.println("Eu vou engatinhar " + quantidadeDeMetros + " metros.");

}

public void andar(String nomeDaMusica, int quantidadeDeMetros) {

System.out.println("Eu vou engatinhar " + quantidadeDeMetros + " e cantar " + nomeDaMusica);

}

}

Page 27: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Notação UML: Bebe

Page 28: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste da Pessoa e do Bebe1. public class TesteDePessoaNormal {

2. public static void main(String[] args) {

3. PessoaNormal pessoa = new PessoaNormal();

4. pessoa.andar();

5. pessoa.andar(50);

6. pessoa.andar("Faroeste Caboclo");

7. pessoa.andar(50, "Faroeste Caboclo");

8.

9. Bebe bebe = new Bebe();

10. bebe.andar();

11. bebe.andar(2);

12. bebe.andar("Dorme neném");

13. bebe.andar("Dorme neném", 2);

14. }

15.}

Page 29: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Sobreposição de métodos

Linha 10: andar() está definido na classe Bebe.Linha 11: andar(2) está definido na classe Bebe.Linha 12: andar(“Dorme neném”) não está definido em Bebe, mas está na superclasse. O código será desviado para PessoaNormal, depois continua em Bebe normalmente.Linha 13: andar(“Dorme neném”, 2) está definido em Bebe.

Page 30: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Dúvidas?

Page 31: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Exercício

Crie a classe Funcionario com os atributos matricula, nome, endereco, ramal e lotacao. Crie o diagrama dessa classe usando a UML.Implemente os métodos de acesso.Crie uma classe para testar todos os métodos.

Page 32: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Funcionariopublic class Funcionario {

private String matricula;

private String nome;

private String endereco;

private String ramal;

private String lotacao;

public String getEndereco() {

return endereco;

}

public void setEndereco(String endereco) {

this.endereco = endereco;

}

public String getLotacao() {

return lotacao;

}

public void setLotacao(String lotacao) {

this.lotacao = lotacao;

}

Page 33: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Funcionario public String getMatricula() {

return matricula;

}

public void setMatricula(String matricula) {

this.matricula = matricula;

}

public String getNome() {

return nome;

}

public void setNome(String nome) {

this.nome = nome;

}

public String getRamal() {

return ramal;

}

public void setRamal(String ramal) {

this.ramal = ramal;

}

}

Page 34: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste do Funcionariopublic class TesteDoFuncionario {

public static void main(String[] args) {

Funcionario f = new Funcionario();

f.setEndereco("CNB 14 LOTE 10");

f.setLotacao("Informática");

f.setMatricula("313120");

f.setNome("Marco Antonio");

f.setRamal("6849");

System.out.println("Nome: " + f.getNome());

System.out.println("Lotação: " + f.getLotacao());

System.out.println("Endereço: " + f.getEndereco());

System.out.println("Ramal: " + f.getRamal());

System.out.println("Matrícula: " + f.getMatricula());

}

}

Page 35: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Exercício

Crie uma classe Processo com os atributos numero, nomeDoReu e telefoneDeContatoDoReu, nomeDoAdvogado, descricaoDoCrime. Crie o diagrama dessa classe usando a UML.Implemente os métodos de acesso.Crie uma classe para testar todos os métodos.

Page 36: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Processopublic class Processo {

private String numero;

private String nomeDoReu;

private String telefoneDeContatoDoReu;

private String nomeDoAdvogado;

private String descricaoDoCrime;

public String getDescricaoDoCrime() {

return descricaoDoCrime;

}

public void setDescricaoDoCrime(String descricaoDoCrime) {

this.descricaoDoCrime = descricaoDoCrime;

}

public String getNomeDoAdvogado() {

return nomeDoAdvogado;

}

public void setNomeDoAdvogado(String nomeDoAdvogado) {

this.nomeDoAdvogado = nomeDoAdvogado;

}

Page 37: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Processo public String getNomeDoReu() {

return nomeDoReu;

}

public void setNomeDoReu(String nomeDoReu) {

this.nomeDoReu = nomeDoReu;

}

public String getNumero() {

return numero;

}

public void setNumero(String numero) {

this.numero = numero;

}

public String getTelefoneDeContatoDoReu() {

return telefoneDeContatoDoReu;

}

public void setTelefoneDeContatoDoReu(String telefoneDeContatoDoReu) {

this.telefoneDeContatoDoReu = telefoneDeContatoDoReu;

}

}

Page 38: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Teste do Processopublic class TesteDoProcesso {

public static void main(String[] args) {

//Atribuindo os valores

Processo p = new Processo();

p.setDescricaoDoCrime("Ofensa Moral");

p.setNomeDoAdvogado("Jose Carlos");

p.setNomeDoReu("Diego Lucas");

p.setNumero("123456/2005");

p.setTelefoneDeContatoDoReu("43254654");

//Recuperando os valores

System.out.println("Crime: " + p.getDescricaoDoCrime());

System.out.println("Advogado: " + p.getNomeDoAdvogado());

System.out.println("Réu: " + p.getNomeDoReu());

System.out.println("Número do processo: " + p.getNumero());

System.out.println("Telefone do réu: " + p.getTelefoneDeContatoDoReu());

}

}

Page 39: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Exercício

Crie a subclasse PessoaFisica para a classe Pessoa com o atributo cpf.Crie uma classe TesteDePessoaFisica e utilize todos os métodos da nova classe.Observe o comportamento da subclasse.

Page 40: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

PessoaFisicapublic class PessoaFisica extends Pessoa {

private String cpf;

public String getCpf() {

return cpf;

}

public void setCpf(String cpf) {

this.cpf = cpf;

}

}

Page 41: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

TesteDaPessoaFisicapublic class TesteDaPessoaFisica {

public static void main(String[] args) {

PessoaFisica p = new PessoaFisica();

//Atribuindo

//Você pode utilizar esses métodos por causa da herança

p.setNome("Marco Antonio");

p.setEndereco("CNB 14");

p.setTelefone("33521134");

//Único método da subclasse

p.setCpf("832869");

//Recuperando

//Métodos da superclasse

System.out.println("Nome: " + p.getNome());

System.out.println("Endereço: " + p.getEndereco());

System.out.println("Telefone: " + p.getTelefone());

//Método da subclasse

System.out.println("Cpf: " + p.getCpf());

}

}

Page 42: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Exercício

Crie a classe Retangulo com os atributos comprimento e largura (int). Crie o diagrama dessa classe usando a UML.Crie a classe ProcessaRetangulo para calcular e imprimir na tela a área e perímetro dos retângulos.

Page 43: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Retangulopublic class Retangulo {

int comprimento;

int largura;

public int calculaArea() {

return comprimento * largura;

}

public int calculaPerimetro() {

int perimetro = (largura * 2) + (comprimento * 2);

return perimetro;

}

}

Page 44: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

ProcessaRetangulopublic class ProcessaRetangulo {

public static void main(String[] args) {

Retangulo r = new Retangulo();

r.comprimento = 5;

r.largura = 6;

System.out.println("Área: " + r.calculaArea());

System.out.println("Perímetro: " + r.calculaPerimetro());

}

}

Page 45: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Desafio

Atualize a classe Calculadora, criando um método para cada operação. Exemplo: o método 'soma' recebe dois parâmetros e imprime o resultado de sua adição. Crie todos os métodos que forem necessários.

Page 46: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Calculadora.javapublic class Calculadora {

public static void main(String[] args) {

//Cria o objeto c - Calculadora

Calculadora c = new Calculadora();

//Recupera os valores informados pelo usuário

int primeiroValor = Integer.parseInt(args[0]);

String operador = args[1];

int segundoValor = Integer.parseInt(args[2]);

//Decide qual operação a classe vai executar

if (operador.equals("+")) {

c.soma(primeiroValor, segundoValor);

} else if (operador.equals("-")) {

c.subtracao(primeiroValor, segundoValor);

} else if (operador.equals("/")) {

c.divisao(primeiroValor, segundoValor);

} else if (operador.equals("*")) {

c.multiplicacao(primeiroValor, segundoValor);

}

}

Page 47: Java Básico Programação Orientada a Objetomarcoreis.net/apresentacoes/ProgramacaoOrientadaaAObjet... · 2014. 4. 13. · Java Básico Programação Orientada a Objeto Marco Antonio,

Calculadora.java public void multiplicacao(int primeiroValor, int segundoValor) {

int resultado = primeiroValor * segundoValor;

System.out.println("Resultado: " + resultado);

}

public void divisao(int primeiroValor, int segundoValor) {

int resultado = primeiroValor / segundoValor;

System.out.println("Resultado: " + resultado);

}

public void subtracao(int primeiroValor, int segundoValor) {

int resultado = primeiroValor - segundoValor;

System.out.println("Resultado: " + resultado);

}

public void soma(int primeiroValor, int segundoValor) {

int resultado = primeiroValor + segundoValor;

System.out.println("Resultado: " + resultado);

}

}