Baixe o app para aproveitar ainda mais
Prévia do material em texto
Explique com suas palavras O que é uma classe? O que são métodos? De um exemplo de criação em Java. O que é encapsulamento? De um exemplo de criação em Java. O que é herança? Demonstre como uma classe pode herdar outra. A) Classes são estruturas nãos quais são baseados os objetos, com todas as suas características e comportamentos. Por exemplo: a planta-baixa é uma classe, pela qual se constroem casas. Classe em Java: class PlantaBaixa { public String endereço; private String registo_imovel ; // .. } PlantaBaixa casa = new PlantaBaixa(); No exemplo acima casa é um objeto do tipo PlantaBaixa. B) Métodos são as funções/ comportamentos de uma classe. Diferente de um atributo – que é uma característica – os métodos são funções exercidas pela classe. Método em Java: class Casa { private String porta = “fechada”; public void class abrir_porta(){ this.porta = “aberta”; } public void class fechar_porta(){ this.porta = “fechada”; } public String class checar_porta(){ return “A porta está “+this.porta; } } No exemplo acima, os métodos abrir_porta() e fechar_porta() alteram o estado do atributo porta, enquanto checar_porta() consulta um atributo. Atenção para os tipos de métodos: as classes abrir_porta() e fechar_porta() não retornam nada para a chamada da função, por isso são do tipo void (sem retorno), porém o método checar_porta() retorna uma mensagem com o estado da porta, em forma de String, por isso seu tipo é String. O tipo do método sempre vai depender do tipo de dado que ele irá retornar, ou não. C) Encapsulamento é a técnica que faz com que detalhes internos do funcionamento dos métodos e atributos de uma classe permaneçam ocultos para os objetos. Diferentes tipos de escopos são utilizados para isso (public, protected, public). Por exemplo: Na cápsula de um remédio, se sabe o que ele trata, mas não explicitamente o que tem dentro da cápsula. Encapsulamento em Java: class Casa{ private double valor_no_cofre = 0; public void coloca_dinheiro_no_cofre(double valor){ this.valor_no_cofre += valor; } Public void tira_dinheiro_do_cofre(double valor){ this.valor_no_cofre -= valor; } Public double consulta_dinheiro_no_cofre(String senha){ If(senha == “123456”){ return this.valor_no_cofre; } } } Casa casa1 = new Casa(); //retorna erro, pois o atributo é privado System.out.println(casa1.valor_no_cofre); //retorna erro, pois a senha está incorreta System.out.println(casa1.consulta_dinheiro_no_cofre(“54321”)); //retorna o valor do cofre com sucesso System.out.println(casa1.consulta_dinheiro_no_cofre(“123456”)); D) Herança é a capacidade de uma classe especializada poder herdar características de uma classe generalizada, em comum com outras classes. Por exemplo: A classe Habitação tem atributos básicos de uma habitação, a classe casa herda os atributos da classe Habitação e implementa suas próprias características, assim como a classe Apartamento, Mansão, etc. Herança em Java: class Habitacao{ private String endereço; } class Casa extends Habitacao{ private Double metros_quadrados_do_quintal; } class Apartamento extends Habitacao{ private Double metros_quadrados_da_cobertura; } No exemplo acima, todas as classes contém o atributo endereço, porém só a classe Casa contém metros_quadrados_do_quintal e só a classe Apartamento contém metros_quadrados_da_cobertura. 2)-------------------------------------------------------------------------------------------------- package exerc_1; import java.util.Scanner; public class Exerc_1 { public static void main(String[] args) { float n1, n2, n3, media; Scanner leia = new Scanner(System.in); System.out.println("Digite a primeira nota: "); n1 = leia.nextFloat(); System.out.println("Digite a segunda nota: "); n2 = leia.nextFloat(); System.out.println("Digite a terceira nota: "); n3 = leia.nextFloat(); media = ((n1*2)+(n2*3)+(n3*5))/10; System.out.println("A média do Aluno foi: "+media); if(media>=7){ System.out.println("E sua situação é: Aprovado"); }else{ System.out.println("E sua situação é: Reprovado"); } } } 3)-------------------------------------------------------------------------------------------------- //MAIN package exerc_2; import java.util.Scanner; public class Exerc_2 { public static void main(String[] args) { Calc calc = new Calc(); Scanner leia = new Scanner(System.in); int op = 0; float n1, n2; while(true){ System.out.println("Calculadora"); System.out.println("-----------"); System.out.println("Soma - 1, Sub - 2, Mult - 3, Div - 4"); op = leia.nextInt(); if(op==1){ System.out.println("Digite o primeiro numero: "); n1 = leia.nextFloat(); System.out.println("Digite o primeiro numero: "); n2 = leia.nextFloat(); System.out.println("resultado: "+calc.soma(n1,n2)); }else if(op==2){ System.out.println("Digite o primeiro numero: "); n1 = leia.nextFloat(); System.out.println("Digite o segundo numero: "); n2 = leia.nextFloat(); System.out.println("resultado: "+calc.sub(n1,n2)); }else if(op==3){ System.out.println("Digite o primeiro numero: "); n1 = leia.nextFloat(); System.out.println("Digite o segundo numero: "); n2 = leia.nextFloat(); System.out.println("resultado: "+calc.mult(n1,n2)); }else if(op==4){ System.out.println("Digite o primeiro numero: "); n1 = leia.nextFloat(); System.out.println("Digite o segundo numero: "); n2 = leia.nextFloat(); System.out.println("resultado: "+calc.div(n1,n2)); }else{ System.out.println("Opção Inválida!"); } System.out.println("Deseja Continuar? 1-sim | 2-nao: "); if(leia.nextInt()==2){ break; } } } } //Calc package exerc_2; public class Calc { private float resul; public float getResul() { return resul; } public void setResul(float resul) { this.resul = resul; } public float soma(float n1,float n2){ this.setResul(n1+n2); return getResul(); } public float sub(float n1,float n2){ this.setResul(n1-n2); return getResul(); } public float mult(float n1,float n2){ this.setResul(n1*n2); return getResul(); } public float div(float n1,float n2){ this.setResul(n1/n2); return getResul(); } } 4)-------------------------------------------------------------------------------------------------- //MAIN package exerc_3; import java.util.Scanner; public class Exerc_3 { public static void main(String[] args) { Calc calc = new Calc(); Scanner leia = new Scanner(System.in); int op = 0; float n1, n2; while(true){ System.out.println("Areas de Formas"); System.out.println("---------------"); System.out.println("Quadrado - 1, Retangulo - 2, Triangulo - 3"); op = leia.nextInt(); if(op==1){ System.out.println("Digite o lado do quadrado: "); n1 = leia.nextFloat(); System.out.println("area: "+calc.quadrado(n1));}else if(op==2){ System.out.println("Digite a base "); n1 = leia.nextFloat(); System.out.println("Digite a altura: "); n2 = leia.nextFloat(); System.out.println("area: "+calc.retangulo(n1,n2)); }else if(op==3){ System.out.println("Digite a base: "); n1 = leia.nextFloat(); System.out.println("Digite a altura: "); n2 = leia.nextFloat(); System.out.println("area: "+calc.triangulo(n1,n2)); }else{ System.out.println("Opção Inválida!"); } System.out.println("Deseja Continuar? 1-sim | 2-nao: "); if(leia.nextInt()==2){ break; } } } } //Calc package exerc_3; public class Calc { private float resul; public float getResul() { return resul; } public void setResul(float resul) { this.resul = resul; } public float retangulo(float base,float altura){ this.setResul(base*altura); return getResul(); } public float quadrado(float lado){ this.setResul(lado*lado); return getResul(); } public float triangulo(float base,float altura){ this.setResul((base*altura)/2); return getResul(); } } 5)-------------------------------------------------------------------------------------------------- //MAIN package exerc_5; import java.util.Scanner; public class Lanchonete { public static void main(String[] args) { CalcLanchonete toolkit = new CalcLanchonete(); Scanner leia = new Scanner(System.in); exec: while(true){ toolkit.menu(); switch(leia.nextInt()){ case(1): toolkit.novoItem(); break; case(2): toolkit.fechaConta(); break exec; default: System.out.println("Opção Inválida!"); break; } } } } //CalcLanchonete package exerc_5; import java.util.Scanner; public class CalcLanchonete { private Scanner leia = new Scanner(System.in); private double total = 0; public void menu() { String menu = ""; menu += "Código Produto Preço\n"; menu += "100 Cachorro quente 3.50\n"; menu += "101 Sorvete 1.50\n"; menu += "102 Hamburger 4.00\n"; menu += "103 Cheeseburger 3.00\n"; menu += "104 Refrigerante 3.50\n\n"; menu += "Selecione a opção desejada: \n"; menu += "1 - Adicionar item na conta\n"; menu += "2 - Fechar conta\n"; System.out.println(menu); } public void novoItem() { double prod = 0.00; int qtd = 0; System.out.println("Qual o Código do Produto desejado? "); switch (this.leia.nextInt()) { case (100): prod = 3.50; break; case (101): prod = 1.50; break; case (102): prod = 4.00; break; case (103): prod = 3.00; break; case (104): prod = 3.50; break; default: System.out.println("Produto Não Existente!"); break; } if (prod != 0.00) { System.out.println("Quantos você deseja?"); qtd = this.leia.nextInt(); this.total = (prod * qtd); } } public void fechaConta() { double pg = 0.00, troco = 0.00; while (true) { System.out.println("Total da conta................ " + this.total); System.out.println("Qual o valor do Pagamento? "); pg = this.leia.nextDouble(); troco = pg - this.total; if (troco >= 0) { System.out.println("Seu troco é................... " + pg); break; } } } } 6)-------------------------------------------------------------------------------------------------- //MAIN package exerc_6; import java.util.Scanner; public class Exerc_6 { public static void main(String[] args) { int conta_atual = 0, conta_s = 0, conta_t = 0, op = 0, n_conta = 0; double val = 0; Conta[] contas = new Conta[21]; Scanner leia = new Scanner(System.in); exec: while (true) { System.out.println("----------Sistema Bancário---------"); System.out.println("Conta: " + conta_atual); System.out.println("1 - Criar Conta"); System.out.println("2 - Selecionar Conta"); System.out.println("3 - Depósito"); System.out.println("4 - Saque"); System.out.println("5 - Consulta"); System.out.println("6 - Transferência"); System.out.println("7 - Fechar Sistema"); System.out.println("Qual a opção Desejada? "); op = leia.nextInt(); boolean empty = true; for (int i = 0; i < contas.length; i++) { if (contas[i] != null) { empty = false; break; } } if (!empty || op == 1 || op == 7) { if (conta_atual != 0 || op == 1 || op == 2 || op == 7) { switch (op) { case (1): { contas[(n_conta + 1)] = new Conta("" + (n_conta + 1)); n_conta += 1; } break; case (2): { System.out.println("Qual conta deseja selecionar? "); conta_s = leia.nextInt(); if (contas[conta_s] != null) { System.out.println("Conta Selecionada"); conta_atual = conta_s; } else { System.out.println("Conta Inválida"); } } break; case (3): { System.out.println("Qual o valor do depósito? "); contas[conta_atual].deposito(leia.nextDouble()); } break; case (4): { System.out.println("Qual o valor do Saque? "); contas[conta_atual].saque(leia.nextDouble()); } break; case (5): { contas[conta_atual].consulta(); } break; case (6): { System.out.println("Qual a conta destino?"); conta_t = leia.nextInt(); System.out.println("Qual o valor a ser transferido?"); val = leia.nextDouble(); if (contas[conta_t] != null) { contas[conta_atual].transfere(val, contas[conta_t]);} else { System.out.println("Conta Inválida"); } } break; case (7): { System.out.println("Obrigado por utilizar nosso Sistema!"); } break exec; default:{ System.out.println("Opção Inválida!"); } break; } } else { System.out.println("Nenhuma conta Selecionada: "); } } else { System.out.println("Nenhuma conta no sistema!"); } } } } //Conta package exerc_6; public class Conta{ private final String numero; private double saldo; Conta(String numero){ this.numero = numero; System.out.println("Conta "+numero+" Criada com sucesso!"); } public void deposito(double valor){ if(valor<0){ System.out.println("Valor Inválido"); return; } this.saldo += valor; System.out.println("Depósito feito com sucesso"); } public void saque(double valor){ if(this.saldo<=0 || this.saldo<=valor){ System.out.println("Não há saldo!"); return; } this.saldo -= valor; System.out.println("Saque feito com sucesso"); } public void consulta(){ if(this.saldo<=0){ System.out.println("Não há saldo!"); return; } System.out.println("O saldo da conta é: "+this.saldo); } public void transfere(double valor, Conta conta_d){ if(this.saldo >= valor){ this.saldo -= valor; conta_d.deposito(valor); System.out.println("Trnsferência realizada con sucesso!"); }else{ System.out.println("Não há saldo!"); } } } 7)-------------------------------------------------------------------------------------------------- package exerc_7; import java.util.Scanner; public class Exerc_7 { public static void main(String[] args) { Scanner leia = new Scanner(System.in); String nome; int qtd_diaria, tipo_reserva, quarto; double val_tot; double[][] precos = new double[][]{{80.00, 100.00, 140.00}, {120.00, 160.00, 200.00}}; while (true) { System.out.println("--------Sistema de Hotel--------"); System.out.println("Nome do Cliente: "); nome = leia.nextLine(); System.out.println("\n\nQual o tipo de reserva? "); System.out.println("1 - Solteiro"); System.out.println("2 - Casal"); tipo_reserva = leia.nextInt() - 1; System.out.println("\n\nQual o tipo de acomodação? "); System.out.println("1 - Básico - R$" + precos[tipo_reserva][0]); System.out.println("2 - Comum - R$" + precos[tipo_reserva][1]); System.out.println("3 - Super - R$" + precos[tipo_reserva][2]); quarto = leia.nextInt() - 1; System.out.println("\n\nQual o número de diárias? "); qtd_diaria = leia.nextInt(); val_tot = precos[tipo_reserva][quarto] * qtd_diaria; System.out.println("\n\nCliente: " + nome); System.out.println("----------"); System.out.println("O total da conta é R$" + val_tot + "\n\n"); System.out.println("Deseja cadastrar outra diária?"); System.out.println("1 - Sim"); System.out.println("2 - Não"); if (leia.nextInt() == 2) { break; } //reseta o Scanner leia.nextLine(); } } }
Compartilhar