Classe Produto e Calculo de Produto

Documentos relacionados
Classe Funcionario tem Endereco

public class Funcionario implements Comparable<Funcionario>{

Módulo 5. Programação Orientada a Objetos. Programação Orientada a Objetos I Java (Rone Ilídio)

Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:

Programação Orientada a Objetos

Linguagem de Programação II Implementação

Atributos e Métodos Estáticos

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Orientação a Objetos - Herança

Tipos, Literais, Operadores

Tipos, Literais, Operadores

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Programação Orientada a Objetos

Classe Aluno e Disciplina, Validação JUnit, gravação no MySql

[Desenvolvimento OO com Java] Modificadores de acesso e atributos de classe

Análise de Programação

Java - Conexão ao Banco de Dados usando JDBC

Agregação, Composição e Associação

Encapsulamento de Dados

Herança; Sobrescrita, Sobrecarga e Polimorfismo; Classes abstratas e concretas (finais).

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

Linguagem de Programação. Diagrama de classes

Programação Orientada a Objetos

Herança e Propriedades

Linguagem de Programação II Implementação

Sabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.

O JUnit permite a realização de testes de unidades, conhecidos como "caixa branca", facilitando assim a correção de métodos e objetos.

Implementação de Classe e Auto-Relacionamento em Java

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Programação Orientada a Objetos

JAVA TÓPICOS ESPECIAIS DE PROGRAMACAO ORIENTADA A OBJETOS

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno

private static Ascii ascii = new Ascii(); static List<Character> asciinumber = ascii.getasciitable(); Scanner input = new Scanner(System.

Vetores Unimensionais

final class UltimosDiasMeses{ static final int[] DIAS_DO_MES = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; }

Linguagem de Programação II Importando Classes/Pacotes

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação

O objetivo aqui é criar um sistema para gerenciar os funcionários do Banco.

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO DIATINF TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TADS

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

4 Conceito de Herança

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)

Interfaces POO. Prof. Marcio Delamaro

DATA ACCESS OBJECT (DAO)

PROGRAMAÇÃO JAVA. Parte 3

RESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

double [] precoa = new double [1000]; // Preço com desconto para compras Avista

Linguagem de programação Java

Recursividade. Prof. Jesus José de Oliveira Neto

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Programação Orientada a Objetos em Java

PADRÕES DE PROJETO DE SOFTWARE

MsC. João Maria MsC. Liviane Melo

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Classes, instâncias e métodos de acesso. prática

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

LÓGICA DE PROGRAMAÇÃO (JAVA) HERANÇA. Professor Carlos Muniz

Aula 03 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Programação Estruturada e Orientada a Objetos

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

Algoritmos e Programação 2. Objetos e Classes em Java. Classes. Revisão. Definições de classes incluem (geralmente):

Programação Orientada por Objectos 2010/11. 2º Exame 28 de Junho de 2011

Nome do Aluno: Matrícula: Turma: Data: 08/04/2013

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -

System.out.print("e"); O programa acima irá imprimir: "b". O programa acima irá imprimir: "bd". O programa acima irá imprimir: "e".

Sintaxe da linguagem Java

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

Universidade Federal de Goiás Instituto de Informática 1ª Prova de Introdução a Programação 06/04/11

Linguagem de Programação IV Introdução

Transcrição:

Classe Produto e Calculo de Produto Criar um projeto -> Criar um pacote chamado entity. Criar uma classe completa de Produto contendo os atributos (código, nome, preço, quantidade, tipo, ativo, desconto), os contrutores vazio e cheio, tostring, e getters e setters. package entity; public class Produto { private Integer codigo; private String nome; private Double preco; private Integer quantidade; private String tipo; private Boolean ativo; private transient Double desconto=0.; O atributo ativo é do tipo Boolean pois ele estamos informando se o produto está ativo ou não, representa a condição dele. O atributo desconto é tipado transient pois não será gravado em banco, ele será calculado e dessa forma, precisa ser inciado com o valor 0. public Produto() { public Produto(Integer codigo, String nome, Double preco, Integer quantidade, String tipo, Boolean ativo) { super(); this.codigo = codigo; this.nome = nome; this.preco = preco; this.quantidade = quantidade; this.tipo = tipo; this.ativo = ativo; 1

@Override public String tostring() { return "Produto [codigo=" + codigo + ", nome=" + nome + ", preco=" + preco + ", quantidade=" + quantidade + ", tipo=" + tipo + ", ativo=" + ativo + "]"; public Integer getcodigo() { return codigo; public void setcodigo(integer codigo) { this.codigo = codigo; public String getnome() { return nome; public void setnome(string nome) { this.nome = nome; public Double getpreco() { return preco; public void setpreco(double preco) { this.preco = preco; public Integer getquantidade() { return quantidade; public void setquantidade(integer quantidade) { this.quantidade = quantidade; public String gettipo() { return tipo; public void settipo(string tipo) { this.tipo = tipo; public Boolean isativo() { return ativo; public void setativo(boolean ativo) { this.ativo = ativo; 2

public Boolean getativo() { return ativo; public Double getdesconto() { return desconto; public void setdesconto(double desconto) { this.desconto = desconto; Criar um pacote chamado control, depois uma classe chamada CalcularProduto para fazermos algum tipo de cálculo relacionado a classe Produto. package control; import entity.produto; public class CalcularProduto { public static void calculardescontoproduto(produto p) { if (p.gettipo().equalsignorecase("celular")) { p.setdesconto((p.getpreco() * 10) / 100); else if (p.gettipo().equalsignorecase("computador")) { p.setdesconto((p.getpreco() * 20) / 100); else { p.setdesconto(0.); Criamos um método static chamado calculardescontoproduto, como o nome já diz, para calcular o desconto de um produto. Um método estático pode ser chamado direto pelo nome, sem precisar chamar a classe primeiro para depois chamá-lo. Criamos uma condição, se o produto for do tipo celular, o método equalsignorecase é utilizado para qualquer que seja o tipo da letra (maiúscula ou minúscula), será reconhecido pelo sistema e efetuará o cálculo do desconto. No setdesconto passar a formula do cálculo do desconto dessa condição. 3

A outra condição é se o produto for do tipo computador, será efetuado um outro tipo de cálculo. E se não for nenhuma das duas condições, não haverá desconto. public static void main(string[] args) { Produto p = new Produto(10,"arroz",4.,10,"alimento",true); CalcularProduto.calcularDescontoProduto(p); System.out.println("Produto: " + p.getnome()); System.out.println( "Total :" + ( (p.getpreco() - p.getdesconto()) * p.getquantidade())); Produto p2 = new Produto(12,"Hiphone",2000.,1,"celular",true); CalcularProduto.calcularDescontoProduto(p2); System.out.println(p2.getNome()); System.out.println("Total :" + ( (p2.getpreco() - p2.getdesconto()) * p2.getquantidade() ) ); No teste main, criamos um objeto de produto com os dados. Chamamos a classe de calculo e o método para ser calculado se houver algum tipo de desconto. Pedimos para imprimir no console o nome do produto e o preço final (já com desconto). Se o método calculardescontoproduto não fosse estático, o main teria que ser escrito de uma outra forma. Chamaríamos a classe, criaríamos um objeto pra ela. Depois abriríamos espaço de memória no método para trabalharmos com ele. public static void main(string[] args) { Produto p = new Produto(10,"arroz",4.,10,"alimento",true); CalcularProduto cp = new CalcularProduto(); 4

cp.calculardescontoproduto(p); 5