Baixe o app para aproveitar ainda mais
Prévia do material em texto
Local: AUDITÓRIO - EAD - Auditório / Andar / Polo Barra da Tijuca / POLO UVA BARRA MARAPENDI - RJ Acadêmico: EAD-IL10311-20194A Aluno: DANIEL FRANCISCO ALVES FELICIANO Avaliação: A2- Matrícula: 20182300254 Data: 22 de Novembro de 2019 - 14:30 Finalizado Correto Incorreto Anulada Discursiva Objetiva Total: 7,50/10,00 1 Código: 36871 - Enunciado: Um desenvolvedor Java precisa implementar os métodos de acesso da classe Usuário, que possui os seguintes atributos: nomeUsuário, nomeLogin e senha (todos do tipo String).Compare as possíveis soluções apresentadas a seguir e avalie qual é a correta para atender à implementação do método que permite realizar a atribuição e o armazenamento na memória da propriedade nomeLogin. Lembrando que o nomeLogin só será atribuído se o texto passado como parâmetro não estiver vazio. a) public void setNomeLogin(n) { if(n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} b) public void setNomeLogin(String n) { nomeLogin = n;} c) public void setNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} d) public void getNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} e) public String setNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} Alternativa marcada: c) public void setNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} Justificativa: Resposta correta: public void setNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} O método de acesso usado para realizar a atribuição e o armazenamento na memória de uma propriedade do objeto é o Setter. Esses métodos são sempre do tipo void, pois não retornam valores.Como existe a restrição de que o atributo não pode ser um texto vazio, é necessário verificar se o parâmetro que o método recebe é vazio – por meio do método isEmpty().isEmpty() – Retorna true se for vazio.Como não queremos que seja um texto vazio, usamos o operador de negação (!). Distratores:public void setNomeLogin(String n) { nomeLogin = n;}Incorreta. Apesar de utilizar o método de acesso Setter, não valida se o parâmetro n está vazio. public void getNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }}Incorreta. O método de acesso Getter é responsável por recuperar da memória os valores atribuídos às propriedades do objeto. Exemplo de utilização do método Getter corretamente:public String getNomeLogin() { return nomeLogin;} (Erro: public String ..... Correto public void ….)public String setNomeLogin(String n) { if(!n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }} Incorreta. O método de acesso Setter não retorna nada. São sempre do tipo void. public void setNomeLogin(n) { if(n.isEmpty()) { nomeLogin = n; } else { System.out.println("valor inválido, não foi atribuído"); }}Incorreta. São encontrados dois erros no método acima:1) Precisamos definir o tipo de dados do parâmetro de entrada: public void setNomeLogin (String n)2) A condição da estrutura condicional está verificando se o parâmetro está vazio e, caso afirmativo, vai armazenar nulo no atributo nomeLogin. Ficou faltando o operador de negação (!) antes de n -- - if( !n.isEmpty()). 1,50/ 1,50 2 Código: 36872 - Enunciado: Durante a implementação de uma classe, o programador decidiu aplicar o conceito de polimorfismo de sobrecarga. Analise a implementação da classe a seguir para obter as informações necessárias para a codificação correta do polimorfismo.class PesoIdeal { String nome, situacao; int idade; double peso, altura;} Compare as possíveis soluções de métodos apresentadas nas alternativas e avalie qual apresenta corretamente a implementação do conceito de polimorfismo de sobrecarga. a) public void cadastroParcial(String n, int i) { }public void cadastroParcial(int i, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } b) public void cadastroParcial1(double p, double a) { }public void cadastroParcial2(double p, int i, double a) { }public void cadastroParcial3(String n, int i, double a) { }public void cadastroParcial4(double a, int i, String n) { } 1,50/ 1,50 c) public void cadastroParcial(double p, double a, int i) { }public void cadastroParcial(double p, int i, double a) { }public void cadastroParcial(String n, int i, double a) { }public void cadastroParcial(double a, int i, double p) { } d) public void cadastroParcial(String n, int i) { }public void cadastroParcial(String n, double p) { }public void cadastroParcial(String n, double p, double a) { }public void cadastroParcial(String n, double a, double p) { } e) public void cadastroParcial1(String n, int i) { }public void cadastroParcial2(int i, String n) { }public void cadastroParcial3(String n, int i, double p) { }public void cadastroParcial4(String n, int i, double p, double a) { } Alternativa marcada: a) public void cadastroParcial(String n, int i) { }public void cadastroParcial(int i, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } Justificativa: Resposta correta:public void cadastroParcial(String n, int i) { }public void cadastroParcial(int i, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } Assinaturas: cadastroParcial(String, int) { } cadastroParcial(int, String) { } cadastroParcial(String, int, double) { } cadastroParcial(String, int, double, double) { } Polimorfismo de sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos.Sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos. Distratores:public void cadastroParcial1(String n, int i) { }public void cadastroParcial2(int i, String n) { }public void cadastroParcial3(String n, int i, double p) { }public void cadastroParcial4(String n, int i, double p, double a) { } Incorreta. Os métodos não possuem o mesmo nome: cadastroParcial1(), cadastroParcial2(), cadastroParcial3(), cadastroParcial4(). public void cadastroParcial(String n, int i) { }public void cadastroParcial(String n, double p) { }public void cadastroParcial(String n, double p, double a) { }public void cadastroParcial(String n, double a, double p) { } Assinaturas: cadastroParcial(String, int i) { }cadastroParcial(String, double) { }cadastroParcial(String, double, double) { }cadastroParcial(String, double, double) { } Incorreta. Apesar de os métodos possuíremo mesmo nome, as assinaturas não são diferentes. O terceiro e o quarto método possuem a mesma assinatura. public void cadastroParcial(double p, double a, int i) { }public void cadastroParcial(double p, int i, double a) { }public void cadastroParcial(String n, int i, double a) { }public void cadastroParcial(double a, int i, double p) { } Incorreta. Apesar de os métodos possuírem o mesmo nome, as assinaturas não são diferentes. O segundo e o quarto método possuem a mesma assinatura.Assinaturas: cadastroParcial(double, double, int) { }cadastroParcial(double, int, double) { }cadastroParcial(String, int, double) { }cadastroParcial(double, int, double) { } public void cadastroParcial1(double p, double a) { }public void cadastroParcial2(double p, int i, double a) { }public void cadastroParcial3(String n, int i, double a) { }public void cadastroParcial4(double a, int i, String n) { } Assinaturas: cadastroParcial1(double, double) { }cadastroParcial2(double, int, double) { }cadastroParcial3(String, int, double) { }cadastroParcial4(double, int, String) { } Incorreta. Os métodos não possuem o mesmo nome: cadastroParcial1(), cadastroParcial2(), cadastroParcial3(), cadastroParcial4(). 3 Código: 36642 - Enunciado: Um desenvolvedor precisa criar uma aplicação financeira para uso com a conversão de valores entre reais e dólares. Sabe-se que o valor do dólar deve ser alterado durante a execução da aplicação, mas de forma que, ao se atualizar esse valor por meio de um objeto, todos os demais sejam atualizados conjuntamente. Para isso, é necessário definir o atributo como compartilhado.Examine as opções de instruções a seguir e determine aquela que permite que seja definido um atributo cujo valor seja compartilhado, ou seja, ao ser atualizado o seu valor, todos os demais objetos criados a partir da classe na aplicação serão atualizados. a) public double dolar = 4.125; b) public const double dolar = 4.125; c) public static double dolar = 4.125; d) public abstract double dolar = 4.125; e) public final double dolar = 4.125; Alternativa marcada: b) public const double dolar = 4.125; Justificativa: Resposta correta: public static double dolar = 4.125;.Um atributo é dito estático quando é compartilhado por todas as instâncias da classe, ou seja, seu conteúdo é compartilhado por todos os objetos criados e, quando um objeto realiza uma alteração, o valor é atualizado em todos os demais. Distratores:public final double dolar = 4.125;. Incorreta. Um atributo é dito final quando o seu valor, após ser inicializado, não pode mais ser alterado durante a execução da aplicação, o seu valor será constante.public double dolar = 4.125;. Incorreta. Um atributo sem modificador pode ser alterado durante a execução da aplicação.public abstract double dolar = 4.125;. Incorreta. Um atributo não pode receber o modificador abstract, que é utilizado apenas com métodos. Um método abstract é aquele que não é implementado em uma classe abstrata ou interface.public const double dolar = 4.125;. Incorreta. O modificador const não faz parte da linguagem Java. 0,00/ 1,00 4 Código: 36640 - Enunciado: Durante o desenvolvimento de uma aplicação, notou-se a necessidade de restringir o acesso do atributo cpf, de forma que somente suas subclasses possam acessá-lo. A figura a seguir representa a hierarquia das classes que foram implementadas no mesmo pacote. Examine as opções a seguir, determinando aquela que apresenta corretamente a definição do membro cpf que atenda ao requisito descrito anteriormente. a) protected int cpf; b) pakage int cpf; c) int cpf; d) public int cpf; e) private int cpf; Alternativa marcada: a) protected int cpf; Justificativa: Resposta correta: protected int cpf;.Para se definir que um atributo possa ser acessado por subclasses da classe onde foi declarado, devemos utilizar o conceito de Encapsulamento protected. Distratores:public int cpf;. Incorreta. Métodos ou atributos public são sempre acessíveis por todos os métodos de quaisquer outras classes. É o nível menos rígido de proteção no Encapsulamento.int cpf;. Incorreta. Omissão (pakage ou padrão). A classe, método ou atributo é acessível somente por métodos das classes que pertencem ao mesmo pacote (pakage).pakage int cpf;. Incorreta. O uso de pakage não é permitido na linguagem Java, a definição de Encapsulamento por pacote não requer modificador.private int cpf;. Incorreta. Os métodos e atributos private, são acessíveis somente por membros da própria classe. 1,00/ 1,00 5 Código: 36611 - Enunciado: Considere a classe a seguir:class IMC { String nome; double peso, altura;}Sabe-se que métodos construtores são usados para controlar a criação (instanciação) do objeto e só executam neste momento e que podem ser sobrecarregados. Sendo assim, qual é a quantidade máxima de métodos construtores que podemos criar para a classe IMC? a) 4. b) 5. c) 8. d) 6. e) 7. Alternativa marcada: c) 8. Justificativa: Resposta correta: 8.Métodos construtores podem ser sobrecarregados e seguem a mesma regra da sobrecarga de métodos, os parâmetros são verificados não de acordo com o identificador, mas sim pela sequência dos tipos (Assinatura). Sendo assim, podemos criar os seguintes métodos construtores, totalizando 8 métodos construtores:public IMC() { }public IMC(String) { }public IMC(double) { }public IMC(String, double) { }public IMC(double, String) { }public IMC(String, double, double) { }public IMC(double, String, double) { }public IMC(double, double, String) { } 0,50/ 0,50 6 Código: 36609 - Enunciado: As linguagens de programação trabalham com três diferentes métodos de implementação, que são: compilação, interpretação pura e híbrido. Em relação à linguagem Java, analise as afirmativas a seguir:I. O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente.II. O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação.III. Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho.IV. O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico.Está correto o que se afirma em: a) II e IV. b) II e III. c) I e III. d) III e IV. e) I e IV. Alternativa marcada: 0,00/ 0,50 d) III e IV. Justificativa: Resposta correta: I e IV.O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente. Verdadeira. Java gera um código intermediário chamado bytecode, que é um código especial de máquina que não leva em consideração um ambiente específico, mas para um ambiente genérico que independe do ambiente de desenvolvimento.O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico. Verdadeira. É criado um interpretador Java (JVM) para cada ambiente onde o Java poderá ser executado. Sendo assim, esse interpretador poderá então executar qualquer aplicação Java desenvolvida para ele. Dessa forma, temos uma JVM específica para cada ambiente ou dispositivo específico, mas não podemos esquecer que, uma vez compilado um programa ou aplicação, essa técnica permite que o programa seja executado em qualquer ambiente. Distratores:O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação. Falsa. O bytecode é uma linguagem de máquina genérica que o processo de compilação da linguagem Java usa para padronizar as aplicações Java, independentemente do ambiente onde ocorreu o processo de compilação.Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho. Falsa. Uma vez que realiza a compilação just-in-time no momento da execução, na etapa do interpretador.7 Código: 36882 - Enunciado: No desenvolvimento de um projeto de sistema baseado nos conceitos de programação orientada a objetos, um desenvolvedor recebeu como tarefa a criação de uma classe. Sabendo-se que outro desenvolvedor da equipe está criando a classe Veículo, a sua tarefa é desenvolver a classe Carro, conforme a modelagem a seguir: Classe Veiculo:Definição dos atributos.Os métodos de acesso dos atributos.Cinco métodos construtores.Métodos: Imprimir, Cadastrar e EntradaDados. Classe Carro:• Definição dos atributos.• Os métodos de acesso dos atributos.• Cinco métodos construtores. Desenvolva a codificação na linguagem Java da classe Carro, implementando os métodos definidos:Após analisar a situação problema, você deve partir da premissa (certeza) de que a classe Veiculo já se encontra pronta e de acordo com os critérios apresentados anteriormente.A classe Carro deverá reaproveitar ao máximo todos os atributos e métodos disponibilizados pela classe Veiculo.Lembre-se de criar apenas a classe Carro.Utilize a boa prática de programação em Java. Cuidado com o tamanho da letra para que caiba no espaço de resposta. Resposta: Comentários: Os métodos não foram implementados. Justificativa: Expectativa de resposta: import java.util.Scanner; public class Carro extends Veiculo{ String tipo; public String getTipo() { return tipo; } public void setTipo(String t) { tipo = t; } public Carro() { super(); // Não é obrigatório } public Carro(String tipo) { setTipo(tipo); } public Carro(String tipo, String m) { super(m); // reaproveitamento setTipo(tipo); } public Carro(String tipo, double p, String m) { super(p, m); // reaproveitamento setTipo(tipo); } public Carro(String tipo, String m, double p) { super(m, p); // reaproveitamento setTipo(tipo); }} 1,50/ 2,50 8 Código: 36645 - Enunciado: Um desenvolvedor precisa criar uma classe para atender às necessidades de uma aplicação, utilizando os conceitos de programação orientada a objetos implementada na linguagem Java.Considere os atributos a seguir para a classe: ClasseAtributosMétodosViolaoMarca: textoNúmero Cordas: inteiroImprimir (exibe todos os valores dos atributos do objeto).Cadastrar (recebe todos os valores dos atributos e armazena no objeto).EntradaDados (realiza a entrada de dados dos atributos do objeto). Construa a classe Violao, definindo os seus atributos e implementando os métodos solicitados.Utilize a boa prática de programação em Java. Resposta: Justificativa: Expectativa de resposta:public class Violao{String marca;int numeroCordas;public void imprimir(){ System.out.println(“Marca:” + marca); System.out.println(“Número Cordas:” + numeroCordas);}public void entradaDados(){ Scanner ent = new Scanner(System.in); System.out.println(“Marca:”); setMarca(ent.nextLine()); System.out.println(“Número Cordas:” + numeroCordas); setNumeroCordas(Integer.parseInt(ent.nextLine()));}public void cadastrar(String m, int nc){ setMarca(m); setNumeroCordas(nc);}} 1,50/ 1,50 (https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/1d3eef26- 0d5e-11ea-9a43-0242ac110002.jpg? Signature=eZ4KfV4Q%2FyYZzNTUEqRFZTV7Qkc%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNW https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/1d3eef26-0d5e-11ea-9a43-0242ac110002.jpg?Signature=eZ4KfV4Q%2FyYZzNTUEqRFZTV7Qkc%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/1f1de39c-0d5e-11ea-9a43-0242ac110002.jpg?Signature=7g0GlRpt5grHP1zWziRhSl7Kmc0%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ (https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/1f1de39c- 0d5e-11ea-9a43-0242ac110002.jpg? Signature=7g0GlRpt5grHP1zWziRhSl7Kmc0%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3P https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/1f1de39c-0d5e-11ea-9a43-0242ac110002.jpg?Signature=7g0GlRpt5grHP1zWziRhSl7Kmc0%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ (https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/20c23446- 0d5e-11ea-9a43-0242ac110002.jpg? Signature=KuJp%2FmyPjYqCY7iUTKe9vS�cNA%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNW https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/22/20c23446-0d5e-11ea-9a43-0242ac110002.jpg?Signature=KuJp%2FmyPjYqCY7iUTKe9vSffcNA%3D&Expires=1574735547&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 1/9 Local: Sala 2 - Sala de Aula / Andar / Polo Campo Grande / POLO CAMPO GRANDE - RJ Acadêmico: EAD-IL10311-20194A Aluno: MICHEL SOARES DE ASSIS Avaliação: A2- Matrícula: 20184300185 Data: 22 de Novembro de 2019 - 14:30 Finalizado Correto Incorreto Anulada Discursiva Objetiva Total: 5,90/10,00 1 Código: 36874 - Enunciado: Durante o desenvolvimento de um projeto, verificou-se a necessidade de implementar as classes Humano, Homem e Mulher. Então, o programador identificou que não há por que criarmos objetos Humanos e sim objetos Homens e Mulheres.Compare as possíveis soluções apresentadas a seguir e avalie qual apresenta a correta codificação, de forma que a classe Humano sirva para modelar objetos que possuam características semelhantes, mas que ainda assim tenham comportamento distinto para ações semelhantes. a) public abstract class Humano {}public abstract Homem extends Humano {}public abstract Mulher extends Humano {} b) public abstract class Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} c) public abstract Humano {}public class Homem implements Humano {}public class Mulher implements Humano {} d) public interface Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} e) public class Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} Alternativa marcada: e) public class Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} Justificativa: Resposta correta:public abstract class Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} O conceito a ser aplicado é o de classes abstratas. Uma classe abstrata não pode ser instanciada por meio da palavra chave new com o uso de um construtor seu. As classes Homem e Mulher devem herdar da classe Humano, por isso foi aplicado o conceito extends. As classes Homem e Mulher deverão implementar os métodos abstratos definidos na classe Humano. Distratores:public class Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} Incorreta. Como a classe Humano não pode ser instanciada, é preciso aplicar o conceito de classes abstratas e, para isso, utilizamos o termo abstract (antes de class) na definição da classe humano. public abstract class Humano {}public abstract Homem extends Humano {}public abstract Mulher extends Humano {} Incorreta. Como a classe Humano não pode ser instanciada, é preciso aplicar o conceito de classes abstratas. As demais classes (Homem e Mulher) devem herdar da classe Humano e, sendo assim, estas não devem ser definidas como abstract. public interface Humano {}public class Homem extends Humano {}public class Mulher extends Humano {} Incorreta. Como a classe Humano não pode ser instanciada, é preciso aplicar o conceito de classes abstratas, e não o conceito de interface (uma interface Java é uma classe abstrata onde todos os seus métodos são abstract e public e seus atributos são static e final implicitamente. Uma interface é então uma classe completamente abstrata ou classe abstrata pura). public abstract Humano {}public class Homemimplements Humano {}public class Mulher implements Humano {} Incorreta. Como a classe Humano não pode ser instanciada, é preciso aplicar o conceito de classes abstratas, mas a classe Humano não possui o modificador class, para determinar que a mesma se trata de uma classe. Já nas classes Homem e Mulher foi aplicado o modificador de interfaces (implements), onde deveria ser aplicado o conceito de herança. 0,00/ 1,50 2 Código: 36611 - Enunciado: Considere a classe a seguir:class IMC { String nome; double peso, altura;}Sabe-se que métodos construtores são usados para controlar a criação (instanciação) do objeto e só executam neste momento e que podem ser sobrecarregados. Sendo assim, qual é a quantidade máxima de métodos construtores que podemos criar para a classe IMC? a) 8. b) 7. c) 5. d) 4. e) 6. Alternativa marcada: 0,00/ 0,50 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 2/9 e) 6. Justificativa: Resposta correta: 8.Métodos construtores podem ser sobrecarregados e seguem a mesma regra da sobrecarga de métodos, os parâmetros são verificados não de acordo com o identificador, mas sim pela sequência dos tipos (Assinatura). Sendo assim, podemos criar os seguintes métodos construtores, totalizando 8 métodos construtores:public IMC() { }public IMC(String) { }public IMC(double) { }public IMC(String, double) { }public IMC(double, String) { }public IMC(String, double, double) { }public IMC(double, String, double) { }public IMC(double, double, String) { } 3 Código: 36609 - Enunciado: As linguagens de programação trabalham com três diferentes métodos de implementação, que são: compilação, interpretação pura e híbrido. Em relação à linguagem Java, analise as afirmativas a seguir:I. O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente.II. O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação.III. Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho.IV. O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico.Está correto o que se afirma em: a) II e III. b) I e IV. c) II e IV. d) I e III. e) III e IV. Alternativa marcada: e) III e IV. Justificativa: Resposta correta: I e IV.O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente. Verdadeira. Java gera um código intermediário chamado bytecode, que é um código especial de máquina que não leva em consideração um ambiente específico, mas para um ambiente genérico que independe do ambiente de desenvolvimento.O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico. Verdadeira. É criado um interpretador Java (JVM) para cada ambiente onde o Java poderá ser executado. Sendo assim, esse interpretador poderá então executar qualquer aplicação Java desenvolvida para ele. Dessa forma, temos uma JVM específica para cada ambiente ou dispositivo específico, mas não podemos esquecer que, uma vez compilado um programa ou aplicação, essa técnica permite que o programa seja executado em qualquer ambiente. Distratores:O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação. Falsa. O bytecode é uma linguagem de máquina genérica que o processo de compilação da linguagem Java usa para padronizar as aplicações Java, independentemente do ambiente onde ocorreu o processo de compilação.Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho. Falsa. Uma vez que realiza a compilação just-in-time no momento da execução, na etapa do interpretador. 0,00/ 0,50 4 Código: 36878 - Enunciado: Um desenvolvedor precisa implementar o método entradaDados() na classe Treinamento, implementada a seguir. Considere que os métodos setters e getters serão implementados corretamente. class Treinamento { String nomeAluno; int ano; double nota;// Métodos setters// Métodos getters} Compare as possíveis soluções apresentadas a seguir e avalie qual é a correta para atender à implementação do método entradaDados() da classe, responsável por realizar a entrada de dados por meio do teclado. a) public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = sc.nextLine(); System.out.println("Nota:"); nota = sc.nextLine();} b) public void entradaDados (String nomeAluno, int ano, double nota){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Integer.parseIntDouble(sc.nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} c) public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = nextLine(); System.out.println("Ano:"); ano = Double.parseDouble(nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(nextLine());} d) public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Integer.parseIntDouble(sc.nextLine()); 1,50/ 1,50 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 3/9 System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} e) public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Double.parseDouble(sc.nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} Alternativa marcada: d) public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Integer.parseIntDouble(sc.nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} Justificativa: Resposta correta:public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Integer.parseIntDouble(sc.nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} Como os atributos ano e Nota não são String, precisamos realizar a conversão de dados, utilizando Integer.parseInt() e Double.parseDouble() respectivamente.Distratores:public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = nextLine(); System.out.println("Ano:"); ano = Double.parseDouble(nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(nextLine());} Incorreta. Faltou identificar o objeto que executará o método nextLine(). Neste caso o sc (sc.nexLine()). public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Double.parseDouble(sc.nextLine()); System.out.println("Nota:"); nota = Double.parseDoublet(sc.nextLine());} Incorreta. O atributo ano é do tipo int. Sendo assim, utilizamos o Integer.parseInt(sc.nextLine()), ao invés de Double. public void entradaDados ( ){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = sc.nextLine(); System.out.println("Nota:"); nota = sc.nextLine();} Incorreta. Como os atributos ano e notanão são do tipo String, há necessidade de convertê-los para os seus respectivos tipos de dados apropriados, utilizando Integer.parseInt() e Double.parseDouble() respectivamente. public void entradaDados (String nomeAluno, int ano, double nota){ Scanner sc = new Scanner(System.in); System.out.println("Aluno:"); nomeAluno = sc.nextLine(); System.out.println("Ano:"); ano = Integer.parseIntDouble(sc.nextLine());Incorreta. Como o método a ser implementado é de entrada de dados, onde o método tem como objetivo solicitar a entrada de dados via teclado ao usuário e armazenar nos seus respectivos atributos, o método não deve receber nenhum parâmetro. 5 Código: 36637 - Enunciado: Durante o desenvolvimento de uma aplicação na linguagem Java, com os conceitos de programação orientada a objetos, foi implementado o método a seguir: public double calcularVenda(double val, double perc, int qtd) { ............. } Determine o uso de polimorfismo de sobrecarga de métodos que está sendo aplicado de forma correta: a) public double calcularVenda(double perc, double val, int qtd) b) public double calcular(double val, int qtd, double perc) c) public int calcularVenda(int qtd, double val, double perc) d) public double calcularVenda(double v, double p, int q) e) public int Venda(double val, double perc, int qtd) Alternativa marcada: d) public double calcularVenda(double v, double p, int q) Justificativa: Resposta correta: public double calcularVenda(double perc, double val, int qtd)A sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos.Esse método possui o mesmo nome do método original e possui uma assinatura diferente. Distratores:public int Venda(double val, double perc, int qtd). Incorreta. Não possui o mesmo nome do método original.public double calcular(double val, int qtd, double perc). Incorreta. Não possui o mesmo nome do método original.public double calcularVenda(double v, double p, int q). Incorreta. Esse método possui o mesmo nome, mas está incorreto porque tem a mesma assinatura do método original.public double calcularVenda(double perc, double val, int qtd). Incorreta. Esse método possui o mesmo nome, mas está incorreto porque tem a mesma assinatura do método original. 0,00/ 1,00 6 Código: 36639 - Enunciado: Para o desenvolvimento de um projeto de sistema orientado a objetos na linguagem Java, considere o trecho de código a seguir: public class Pessoa { }public class Funcionario extends Pessoa { }public class Supervisor extends Funcionario { } Examine as opções apresentadas e determine a correta: 1,00/ 1,00 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 4/9 a) A classe Pessoa é subclasse direta da classe Supervisor. b) A classe Supervisor é subclasse direta tanto de Pessoa como de Funcionario. c) A classe Supervisor é subclasse direta de Pessoa. d) A classe Funcionario é superclasse direta de Supervisor. e) A classe Supervisor é superclasse direta de Funcionario e de Pessoa. Alternativa marcada: d) A classe Funcionario é superclasse direta de Supervisor. Justificativa: Resposta correta: A classe Funcionario é superclasse direta de Supervisor.A classe Supervisor herda diretamente da classe Funcionário, ou seja, a classe Funcionario é superclasse direta de Supervisor. Distratores:A classe Pessoa é subclasse direta da classe Supervisor. Incorreta. A classe Pessoa é superclasse direta de Funcionario.A classe Supervisor é superclasse direta de Funcionario e de Pessoa. Incorreta. A classe Pessoa que é a superclasse de Funcionario, que é superclasse de Supervisor.A classe Supervisor é subclasse direta de Pessoa. Incorreta. A classe Supervisor é subclasse direta de Funcionario.A classe Supervisor é subclasse direta tanto de Pessoa, como de Funcionario. Incorreta. A classe Supervisor é subclasse direta de Funcionário. Já a classe Funcionario é subclasse direta de Pessoa. 7 Código: 36883 - Enunciado: Você faz parte de uma equipe de projeto que precisa desenvolver uma aplicação para a indústria de calçados. A aplicação deve ser criada na linguagem Java seguindo os critérios conceituais da programação orientada a objetos. A equipe é composta por três desenvolvedores, dos quais um deve desenvolver a aplicação, outro a classe Calcado e você deve desenvolver a classe Sapato.A sua tarefa é desenvolver a classe Sapato, conforme a modelagem a seguir: Classe Calcado:Definição dos atributos;Os métodos de acesso dos atributos.Cimco métodos construtores.Métodos: Imprimir, Cadastrar e EntradaDados. Classe Sapato:• Definição dos atributos.• Os métodos de acesso dos atributos.• Cinco métodos construtores.• Métodos: Imprimir e Cadastrar. Desenvolva a codificação na linguagem Java da classe Sapato:Após analisar a situação problema, você deve partir da premissa (certeza) de que a classe Calcado já se encontra pronta e de acordo com os critérios apresentados anteriormente.A classe Sapato deverá reaproveitar ao máximo todos os atributos e métodos disponibilizados pela classe Calcado.A classe Sapato deverá reaproveitar no mínimo um método construtor da classe Calcado.Lembre-se de criar apenas a classe Sapato.Utilize a boa prática de programação em Java. Cuidado com o tamanho da letra para que caiba no espaço de resposta. Resposta: Comentários: Não há reaproveitamento de código dos demais métodos (entrada e imprimir). Justificativa: Expectativa de resposta:import java.util.Scanner; public class Sapato extends Calcado{ String cor; public String getCor() { return cor; } public void setCor(String c) { cor = c; } public Sapato() { super(); // Não é obrigatório } public Sapato(String cor) { setCor(cor); } public Sapato(String cor, String tipo) { super(tipo); // reaproveitamento setCor(cor); } public Sapato(String cor, int tamanho, String tipo) { super(tamanho, tipo); // reaproveitamento setCor(cor); } public Sapato(String cor, String tipo, int tamanho) { super(tipo, tamanho); // reaproveitamento setCor(cor); } public void cadastrar(String tipo, int tamanho, String cor) { super.cadastrar(tipo, tamanho); // reaproveitamento setCor(cor); } @Override // Não é obrigatório public void imprimir(){ super.imprimir();// reaproveitamento System.out.println("Cor :" + cor); } } 2,20/ 2,50 8 Código: 36645 - Enunciado: Um desenvolvedor precisa criar uma classe para atender às necessidades de uma aplicação, utilizando os conceitos de programação orientada a objetos implementada na linguagem Java.Considere os atributos a seguir para a classe: ClasseAtributosMétodosViolaoMarca: textoNúmero Cordas: inteiroImprimir (exibe todos os valores dos atributos do objeto).Cadastrar (recebe todos os valores dos atributos e armazena no objeto).EntradaDados (realiza a entrada de dados dos atributos do objeto). Construa a classe Violao, definindo os seus atributos e implementando os métodos solicitados.Utilize a boa prática de programação em Java. Resposta: Comentários: Faltaram os métodos de acesso. Justificativa: Expectativa de resposta:public class Violao{String marca;int numeroCordas;public void imprimir(){ System.out.println(“Marca:” + marca); System.out.println(“Número Cordas:” + numeroCordas);}public void entradaDados(){ Scanner ent = new Scanner(System.in); System.out.println(“Marca:”); setMarca(ent.nextLine()); System.out.println(“Número Cordas:” + numeroCordas); 1,20/ 1,50 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 5/9 setNumeroCordas(Integer.parseInt(ent.nextLine()));}public void cadastrar(String m, int nc){setMarca(m); setNumeroCordas(nc);}} 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 6/9 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 7/9 (https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/27/8c7395e6- 1159-11ea-a9c8-0242ac110003.jpg? Signature=DwRXrKHelz7M3JmLzYWDn2EnV4o%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNW https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/27/8c7395e6-1159-11ea-a9c8-0242ac110003.jpg?Signature=DwRXrKHelz7M3JmLzYWDn2EnV4o%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/27/8e3eda20-1159-11ea-a9c8-0242ac110003.jpg?Signature=91r12gpBiTItESp%2FwuFD2XW4CK8%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 8/9 (https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/27/8e3eda20- 1159-11ea-a9c8-0242ac110003.jpg? Signature=91r12gpBiTItESp%2FwuFD2XW4CK8%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNW https://strtec.s3.amazonaws.com/ilumno/processamento/imagens_corrigidas/2019/11/27/8e3eda20-1159-11ea-a9c8-0242ac110003.jpg?Signature=91r12gpBiTItESp%2FwuFD2XW4CK8%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732362/a0584830-c732-11e8-8ec2-0242ac11002e/ 9/9 (http://strtec.s3.amazonaws.com/ilumno/processamento/imagens_readables/2019/11/27/8fb890b2- 1159-11ea-a9c8-0242ac110003.jpg? Signature=YV0wgRqJ63QszSwWDOk8J4lVFWk%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNW http://strtec.s3.amazonaws.com/ilumno/processamento/imagens_readables/2019/11/27/8fb890b2-1159-11ea-a9c8-0242ac110003.jpg?Signature=YV0wgRqJ63QszSwWDOk8J4lVFWk%3D&Expires=1574964587&AWSAccessKeyId=AKIAJ5OVDHP63TNWC3PQ 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 1/7 Local: Sala 1 - TJ - Prova On-line / Andar / Polo Tijuca / POLO UVA TIJUCA Acadêmico: EAD-IL10328-20203A Aluno: CAIO DANIEL MORAIS AUGUSTO Avaliação: A2- Matrícula: 20191303405 Data: 26 de Setembro de 2020 - 08:00 Finalizado Correto Incorreto Anulada Discursiva Objetiva Total: 9,00/10,00 1 Código: 36638 - Enunciado: Um desenvolvedor recebeu como tarefa a criação da classe Funcionario, que se relaciona hierarquicamente com a classe Pessoa, conforme pode ser observado na modelagem a seguir: Determine a opção cujo trecho de código em Java está implementando a classe Funcionario corretamente: a) public class Pessoa implements Funcionario { } b) public class Funcionario { } c) public class Pessoa extends Funcionario { } d) public class Funcionario extends Pessoa { } e) public classe Funcionário implements Pessoa { } Alternativa marcada: d) public class Funcionario extends Pessoa { } Justificativa: Resposta correta: public class Funcionario extends Pessoa { }.A figura apresenta a aplicação do conceito de herança, onde a classe Funcionario herda da classe Pessoa. Na linguagem Java, a sintaxe para implementar o conceito de herança é: public class <nome da classe “filha”> extends <nome da classe “pai”> { }Nesse caso, a classe “filha” é Funcionario e a classe “mãe” é Pessoa. Distratores:public class Funcionario { }. Incorreta. Essa instrução implementa a classe Funcionário sem o conceito de herança e, como podemos observar na modelagem, a classe Funcionário herda da classe Pessoa. public class Pessoa extends Funcionario { }. Incorreta. Essa instrução, apesar de implementar o conceito de herança, faz uma inversão entre as classes Pai e Filha.public class Pessoa implements Funcionario { }. Incorreta. Essa instrução utiliza o termo implements, que só deve ser usado para interfaces.public classe Funcionário implements Pessoa { }. Incorreta. Essa instrução utiliza o termo implements, que só deve ser usado para interfaces. 1,00/ 1,00 2 Código: 36875 - Enunciado: Durante a implementação de uma classe, o programador decidiu aplicar o conceito de sobrecarga de métodos construtores. Analise a implementação da classe abaixo. (Considere que os métodos Setters e Getters serão implementados corretamente).class PesoIdeal { String nome, situacao; int idade; double peso, altura; public PesoIdeal () { } public PesoIdeal(String n, double p) { setNome(n); setPeso(p); } public PesoIdeal(String n, double p, double a) { setNome(n); setPeso(p); setAltura(a); } public PesoIdeal(double a, double p) { setAltura(a); setPeso(p); }} Compare as possíveis soluções apresentadas a seguir e avalie qual apresenta a correta codificação da criação do objeto atleta. a) PesoIdeal atleta = new PesoIdeal (“Paulo”, “Sobrepeso”,80.5, 1.8) b) PesoIdeal atleta = new PesoIdeal(Paulo,80.5, 1.8) c) PesoIdeal = new atleta(1.80, 80.5); d) PesoIdeal atleta = new PesoIdeal(1.80, 80.5); e) Atleta = new PesoIdeal(1.80, 80.5); Alternativa marcada: 1,50/ 1,50 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 2/7 d) PesoIdeal atleta = new PesoIdeal(1.80, 80.5); Justificativa: Resposta correta: PesoIdeal atleta = new PesoIdeal(1.80, 80.5);Método construtor: possui o mesmo nome da classe. Sobrecarga de método construtor: métodos com mesmo nome da classe, mas com assinaturas diferentes.Sintaxe para criar objeto: <nome da classe> nome do objeto = new <nome do método construtor>; Está utilizando o quarto método construtor definido na classe PesoIdeal. Distratores:Atleta = new PesoIdeal(1.80, 80.5);. Incorreta. A sintaxe para criar um objeto é: <nome da classe> nome do objeto = new <nome do método construtor>;. Nesse caso, faltou o nome da classe antes da palavra Atleta.PesoIdeal = new atleta(1.80, 80.5);. Incorreta. A sintaxe para criar um objeto é: <nome da classe> nome do objeto = new <nome do método construtor>; Nesse caso, faltou o nome do objeto depois do nome da classe.PesoIdeal atleta = new PesoIdeal(Paulo,80.5, 1.8). Incorreta. O problema está na passagem dos parâmetros do método construtor. Quando temos o tipo de dados String, o mesmo deve ser passado entre aspas – “Paulo”, ou ser o identificador de uma variável do tipo String, que não foi identificada de acordo com a boa prática em desenvolvimento Java.PesoIdeal atleta = new PesoIdeal (“Paulo”, “Sobrepeso”,80.5, 1.8). Incorreta. Não foi implementado na classe PesoIdeal nenhum método com a assinatura: PesoIdeal(String, String, double, double).Assinaturas dos métodos implementados:PesoIdeal ()PesoIdeal(String, double)PesoIdeal(String, double, double)PesoIdeal(double, double) 3 Código: 36630 - Enunciado: O conhecimento das técnicas de desenvolvimento de sistemas baseadas no paradigma de programação orientada a objetos é fundamental para o desenvolvimento de sistemas complexos, facilitando a divisão de tarefas em partes mais simples e fáceis de serem desenvolvidas, permitindo que, posteriormente, essas partes sejam agrupadas de forma a resolver problemas que envolvem grandes e complexos sistemas. Em relação aos conceitos de orientação a objetos, analise as afirmativas a seguir:I. Os atributos definem um conjunto de descritores do objeto de forma geral são capazes de realizar as ações necessárias do objeto para o contexto do sistema.II. As classes na programação orientada a objetos são responsáveis por descrever as características e as ações que o objeto poderá realizar.III.Os métodos de acesso Getters são responsáveis por recuperar valores atribuídos às propriedades e que se encontram armazenados na memória de um objeto. Não podem ser do tipo void.IV. Os métodos de acesso Setters são responsáveis por realizar a atribuição e o armazenamento na memória de uma propriedade do objeto. Se necessário, eles podem retornar parâmetros.Identifique as afirmativas corretas: a) I e III. b) II e IV. c) II e III. d) III e IV. e) I e IV. Alternativa marcada: c) II e III. Justificativa: Resposta correta: II e III.As classes na programação orientada a objetos são responsáveis por descrever as características e as ações que o objeto poderá realizar. Verdadeira. Classe é um conjunto de códigos de programação que definem um modelo para a criação de um ou mais objetos. É uma estrutura capaz de representar diferentes objetos, com propriedades distintas, mas com as mesmas características. A classe é o modelo para a criação dos objetos.Os métodos de acesso Getters são responsáveis por recuperar valores atribuídos às propriedades e que se encontram armazenados na memória de um objeto. Não podem ser do tipo void. Verdadeira. Os métodos Getters nunca são do tipo void, pois sempre retornam um valor, devendo ser do mesmo tipo do atributo que irá retornar. Distratores:Os atributos definem um conjunto de descritores do objeto de forma geral são capazes de realizar as ações necessárias do objeto para o contexto do sistema. Falsa. Os atributos 0,50/ 0,50 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 3/7 de uma classe são responsáveis por descrever o objeto quanto as suas características, mas não são responsáveis pela realização das ações.Os métodos de acesso Setters são responsáveis por realizar a atribuição e o armazenamento na memória de uma propriedade do objeto. Se necessário, eles podem retornar parâmetros. Falsa. Os métodos Setters são sempre do tipo void, porque nunca devem retornar nada. 4 Código: 36609 - Enunciado: As linguagens de programação trabalham com três diferentes métodos de implementação, que são: compilação, interpretação pura e híbrido. Em relação à linguagem Java, analise as afirmativas a seguir:I. O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente.II. O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação.III. Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho.IV. O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico.Está correto o que se afirma em: a) II e III. b) I e III. c) II e IV. d) I e IV. e) III e IV. Alternativa marcada: d) I e IV. Justificativa: Resposta correta: I e IV.O código é compilado uma vez, gerando o bytecode, que pode ser interpretado quantas vezes forem necessárias e em qualquer ambiente java existente. Verdadeira. Java gera um código intermediário chamado bytecode, que é um código especial de máquina que não leva em consideração um ambiente específico, mas para um ambiente genérico que independe do ambiente de desenvolvimento.O interpretador java também é conhecido como JVM (Java Virtual Machine), que nada mais é do que um so�ware que é capaz de interpretar os bytecodes em um ambiente específico. Verdadeira. É criado um interpretador Java (JVM) para cada ambiente onde o Java poderá ser executado. Sendo assim, esse interpretador poderá então executar qualquer aplicação Java desenvolvida para ele. Dessa forma, temos uma JVM específica para cada ambiente ou dispositivo específico, mas não podemos esquecer que, uma vez compilado um programa ou aplicação, essa técnica permite que o programa seja executado em qualquer ambiente. Distratores:O bytecode é dependente do hardware e so�ware (sistema operacional) do computador onde ocorreu a compilação. Falsa. O bytecode é uma linguagem de máquina genérica que o processo de compilação da linguagem Java usa para padronizar as aplicações Java, independentemente do ambiente onde ocorreu o processo de compilação.Atualmente realiza uma compilação just-int-time (no momento da compilação), com o intuito de aumentar o desempenho. Falsa. Uma vez que realiza a compilação just-in-time no momento da execução, na etapa do interpretador. 0,50/ 0,50 5 Código: 36636 - Enunciado: Para o desenvolvimento de uma aplicação utilizando os conceitos de programação orientada a objeto na linguagem Java, considere a classe a seguir:class IMC {String nome;double peso, altura;}Determine, dentre as alternativas, aquela que implementa corretamente o método de acesso que permite recuperar valores atribuídos à propriedade peso, que se encontra armazenada na memória de um objeto. a) public double setPeso( ) { return peso; } b) public setPeso(double p) { peso = p; } c) public double getPeso( ) { return peso; } d) public getPeso( ) { return peso; } 0,00/ 1,00 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 4/7 e) public getPeso(double peso) { return peso; } Alternativa marcada: a) public double setPeso( ) { return peso; } Justificativa: Resposta correta:public double getPeso( ) { return peso; } O método de acesso que é responsável por recuperar valores é o Getter. Esses métodos nunca recebem parâmetro, uma vez que apenas devem retornar o valor atribuído à propriedade, além disso, devem ser definidos com o mesmo tipo do atributo que irá retornar. Distratores:public getPeso( ). Incorreta. Não foi definido o tipo de retorno, apenas métodos construtores não possuem tipo de retorno.public getPeso(double peso). Incorreta. Não definido o tipo de retorno e métodos Getters não recebem parâmetros.public setPeso(double p). Incorreta. Não definido o tipo de retorno e o método é do tipo Setter, que realiza o armazenamento e não o retorno.public double setPeso( ). Incorreta. O método é do tipo Setter, que realiza o armazenamento e não o retorno, além disso, métodos Setters são sempre do tipo void. 6 Código: 36879 - Enunciado: Um desenvolvedor precisa implementar os métodos de acesso da classe Treinamento, a qual possui os seguintes atributos: nomeAluno, ano e nota. Compare as possíveis soluções apresentadas a seguir e avalie qual é a correta para atender à implementação do método que permite realizar a atribuição e o armazenamento na memória da propriedade nota. Lembrando que a nota de um aluno precisa estar entre 0 e 10 para que seja armazenada no atributo; caso contrário, deverá armazenar o valor 0 (zero) no atributo. a) public void setNota(double n) { if(n >= 0 && n <= 10) { nota = n; } else { nota = 0; }} b) public void setNota(double n) { if(n <= 10) { nota = n; } else { nota = 0; }} c) public double setNota(double n) { if(n >= 0 && n <= 10) { return n; } else { return 0; }} d) public void setNota(double n) { if(n >= 0 || n < 10) { nota = n; } else { nota = 0; }} e) public void getNota(double n) { if(n >= 0 && n <= 10) { nota = n; } else { nota = 0; }} Alternativa marcada: a) public void setNota(double n) { if(n >= 0 && n <= 10) { nota= n; } else { nota = 0; }} Justificativa: Resposta correta:public void setNota(double n) { if(n >= 0 && n <= 10) { nota = n; } else { nota = 0; }} O método de acesso usado para realizar a atribuição e o armazenamento na memória de uma propriedade do objeto é o Setter. A nota tem que ser maior igual a 0 e menor ou igual a 10. Para isso, precisamos aplicar uma estrutura condicional if(). Lembrando que o operador lógico E em Java é: &&. Distratores:public double setNota(double n) { if(n >= 0 && n <= 10) { return n; } else { return 0; }} Incorreta. O método Setter não deve retornar valor. Sendo assim, ele deve ser do tipo void, e não double. public void setNota(double n) { if(n <= 10) { nota = n; } else { nota = 0; }} Incorreta. Se a nota for menor que zero, será aceita, uma vez que a condição só verifica se a nota é menor ou igual a 10. public void setNota(double n) { if(n >= 0 || n < 10) { nota = n; } else { nota = 0; }} Incorreta. Não podemos utilizar o operador lógico ou (em Java ||) para esse caso, uma vez que basta uma condição ser verdade para que tudo seja verdade. Nesse caso, se a nota for 11, será 1,50/ 1,50 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 5/7 armazenada no atributo nota, uma vez que, ao validar n >= 0 (ou seja 11>=0 será Verdade) ou n <=10 (ou seja 11 <= 10 será falso), analisando Verdade OU Falso, o resultado lógico será: Verdade. public void getNota(double n) { if(n >= 0 && n <= 10) { nota = n; } else { nota = 0; }} Incorreta. O método Getter é responsável por recuperar valores atribuídos às propriedades e que se encontram armazenados na memória de um objeto e não devem ser usados para atribuições. 7 Código: 36883 - Enunciado: Você faz parte de uma equipe de projeto que precisa desenvolver uma aplicação para a indústria de calçados. A aplicação deve ser criada na linguagem Java seguindo os critérios conceituais da programação orientada a objetos. A equipe é composta por três desenvolvedores, dos quais um deve desenvolver a aplicação, outro a classe Calcado e você deve desenvolver a classe Sapato.A sua tarefa é desenvolver a classe Sapato, conforme a modelagem a seguir: Classe Calcado:Definição dos atributos;Os métodos de acesso dos atributos.Cimco métodos construtores.Métodos: Imprimir, Cadastrar e EntradaDados. Classe Sapato:• Definição dos atributos.• Os métodos de acesso dos atributos.• Cinco métodos construtores.• Métodos: Imprimir e Cadastrar. Desenvolva a codificação na linguagem Java da classe Sapato:Após analisar a situação problema, você deve partir da premissa (certeza) de que a classe Calcado já se encontra pronta e de acordo com os critérios apresentados anteriormente.A classe Sapato deverá reaproveitar ao máximo todos os atributos e métodos disponibilizados pela classe Calcado.A classe Sapato deverá reaproveitar no mínimo um método construtor da classe Calcado.Lembre-se de criar apenas a classe Sapato.Utilize a boa prática de programação em Java. Cuidado com o tamanho da letra para que caiba no espaço de resposta. Resposta: public class Sapato extends Calcado{ String cor; public String getCor() { return cor; } public void setCor(String c) { cor = c; } public Sapato() { super(); } public Sapato(String cor) { setCor(cor); } public Sapato(String cor, String tipo) { super(tipo); setCor(cor); } public Sapato(String cor, int tamanho, String tipo) { super(tamanho, tipo); 2,50/ 2,50 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 6/7 setCor(cor); } public Sapato(String cor, String tipo, int tamanho) { super(tipo, tamanho); setCor(cor); } public void cadastrar(String tipo, int tamanho, String cor) { super.cadastrar(tipo, tamanho); setCor(cor); } public void imprimir(){ super.imprimir(); System.out.println("Cor :" + cor); } } Justificativa: Expectativa de resposta:import java.util.Scanner; public class Sapato extends Calcado{ String cor; public String getCor() { return cor; } public void setCor(String c) { cor = c; } public Sapato() { super(); // Não é obrigatório } public Sapato(String cor) { setCor(cor); } public Sapato(String cor, String tipo) { super(tipo); // reaproveitamento setCor(cor); } public Sapato(String cor, int tamanho, String tipo) { super(tamanho, tipo); // reaproveitamento setCor(cor); } public Sapato(String cor, String tipo, int tamanho) { super(tipo, tamanho); // reaproveitamento setCor(cor); } public void cadastrar(String tipo, int tamanho, String cor) { super.cadastrar(tipo, tamanho); // reaproveitamento setCor(cor); } @Override // Não é obrigatório public void imprimir(){ super.imprimir();// reaproveitamento System.out.println("Cor :" + cor); } } 8 Código: 36952 - Enunciado: Encapsulamento é o ato de esconder os membros (atributos e métodos) de uma classe: seja por não serem de interesse por questões de implementação ou por segurança dos dados atribuídos ao objeto. Indique quando deve ser utilizado o modificador de acesso private. Resposta: Quando existe um método que serve para ajudar a própria classe. Justificativa: Expectativa de resposta:Quando queremos definir que os métodos e atributos de uma classe sejam acessíveis somente por membros da própria classe. 1,50/ 1,50 08/10/2020 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/5886397/dd84ae80-3535-11e9-ba31-0242ac110007/ 7/7 Powered by TCPDF (www.tcpdf.org) http://www.tcpdf.org 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732100/d64294e6-5eb9-11e8-8a4d-0242ac110036/ 1/9 Local: A308(INATIVO) - Bloco A - 3º andar / Andar / Polo Tijuca / POLO UVA TIJUCA Acadêmico: EAD-IL10311-20194A Aluno: JACKSON MENA DO COUTO Avaliação: A2- Matrícula: 20182300244 Data: 23 de Novembro de 2019 - 11:00 Finalizado Correto Incorreto Anulada Discursiva Objetiva Total: 8,50/10,00 1 Código: 36872 - Enunciado: Durante a implementação de uma classe, o programador decidiu aplicar o conceito de polimorfismo de sobrecarga. Analise a implementação da classe a seguir para obter as informações necessárias para a codificação correta do polimorfismo.class PesoIdeal { String nome, situacao; int idade; double peso, altura;} Compare as possíveis soluções de métodos apresentadas nas alternativas e avalie qual apresenta corretamente a implementação do conceito de polimorfismo de sobrecarga. a) public void cadastroParcial1(String n, int i) { }public void cadastroParcial2(int i, String n) { }public void cadastroParcial3(String n, int i, double p) { }public void cadastroParcial4(String n, int i, double p, double a) { } b) public void cadastroParcial(String n, int i) { }public void cadastroParcial(String n, double p) { }public void cadastroParcial(String n, double p, double a) { }public void cadastroParcial(String n, double a, double p) { } c) public void cadastroParcial1(double p, double a) { }public void cadastroParcial2(double p, int i, double a) { }public void cadastroParcial3(String n, int i, double a) { }public void cadastroParcial4(double a, int i, String n) { } d) public void cadastroParcial(String n, int i) { }public void cadastroParcial(inti, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } e) public void cadastroParcial(double p, double a, int i) { }public void cadastroParcial(double p, int i, double a) { }public void cadastroParcial(String n, int i, double a) { }public void cadastroParcial(double a, int i, double p) { } Alternativa marcada: d) public void cadastroParcial(String n, int i) { }public void cadastroParcial(int i, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } Justificativa: Resposta correta:public void cadastroParcial(String n, int i) { }public void cadastroParcial(int i, String n) { }public void cadastroParcial(String n, int i, double p) { }public void cadastroParcial(String n, int i, double p, double a) { } Assinaturas: cadastroParcial(String, int) { } cadastroParcial(int, String) { } cadastroParcial(String, int, double) { } cadastroParcial(String, int, double, double) { } Polimorfismo de sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos.Sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos. Distratores:public void cadastroParcial1(String n, int i) { }public void cadastroParcial2(int i, String n) { }public void cadastroParcial3(String n, int i, double p) { }public void cadastroParcial4(String n, int i, double p, double a) { } Incorreta. Os métodos não possuem o mesmo nome: cadastroParcial1(), cadastroParcial2(), cadastroParcial3(), cadastroParcial4(). public void cadastroParcial(String n, int i) { }public void cadastroParcial(String n, double p) { }public void cadastroParcial(String n, double p, double a) { }public void cadastroParcial(String n, double a, double p) { } Assinaturas: cadastroParcial(String, int i) { }cadastroParcial(String, double) { }cadastroParcial(String, double, double) { }cadastroParcial(String, double, double) { } Incorreta. Apesar de os métodos possuírem o mesmo nome, as assinaturas não são diferentes. O terceiro e o quarto método possuem a mesma assinatura. public void cadastroParcial(double p, double a, int i) { }public void cadastroParcial(double p, int i, double a) { }public void cadastroParcial(String n, int i, double a) { }public void cadastroParcial(double a, int i, double p) { } Incorreta. Apesar de os métodos possuírem o mesmo nome, as assinaturas não são diferentes. O segundo e o quarto método possuem a mesma assinatura.Assinaturas: cadastroParcial(double, double, int) { }cadastroParcial(double, int, double) { }cadastroParcial(String, int, double) { }cadastroParcial(double, int, double) { } public void cadastroParcial1(double p, double a) { }public void cadastroParcial2(double p, int i, double a) { }public void cadastroParcial3(String n, int i, double a) { }public void cadastroParcial4(double a, int i, String n) { } Assinaturas: cadastroParcial1(double, double) { }cadastroParcial2(double, int, double) { }cadastroParcial3(String, int, double) { }cadastroParcial4(double, int, String) { } Incorreta. Os métodos não possuem o mesmo nome: cadastroParcial1(), cadastroParcial2(), cadastroParcial3(), cadastroParcial4(). 1,50/ 1,50 2 Código: 36611 - Enunciado: Considere a classe a seguir:class IMC { String nome; double peso, altura;}Sabe-se que métodos construtores são usados para controlar a criação (instanciação) do objeto e só executam neste momento e que podem ser sobrecarregados. Sendo assim, qual é a quantidade máxima de métodos construtores que podemos criar para a classe IMC? a) 5. b) 6. 0,00/ 0,50 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732100/d64294e6-5eb9-11e8-8a4d-0242ac110036/ 2/9 c) 7. d) 4. e) 8. Alternativa marcada: b) 6. Justificativa: Resposta correta: 8.Métodos construtores podem ser sobrecarregados e seguem a mesma regra da sobrecarga de métodos, os parâmetros são verificados não de acordo com o identificador, mas sim pela sequência dos tipos (Assinatura). Sendo assim, podemos criar os seguintes métodos construtores, totalizando 8 métodos construtores:public IMC() { }public IMC(String) { }public IMC(double) { }public IMC(String, double) { }public IMC(double, String) { }public IMC(String, double, double) { }public IMC(double, String, double) { }public IMC(double, double, String) { } 3 Código: 36630 - Enunciado: O conhecimento das técnicas de desenvolvimento de sistemas baseadas no paradigma de programação orientada a objetos é fundamental para o desenvolvimento de sistemas complexos, facilitando a divisão de tarefas em partes mais simples e fáceis de serem desenvolvidas, permitindo que, posteriormente, essas partes sejam agrupadas de forma a resolver problemas que envolvem grandes e complexos sistemas. Em relação aos conceitos de orientação a objetos, analise as afirmativas a seguir:I. Os atributos definem um conjunto de descritores do objeto de forma geral são capazes de realizar as ações necessárias do objeto para o contexto do sistema.II. As classes na programação orientada a objetos são responsáveis por descrever as características e as ações que o objeto poderá realizar.III. Os métodos de acesso Getters são responsáveis por recuperar valores atribuídos às propriedades e que se encontram armazenados na memória de um objeto. Não podem ser do tipo void.IV. Os métodos de acesso Setters são responsáveis por realizar a atribuição e o armazenamento na memória de uma propriedade do objeto. Se necessário, eles podem retornar parâmetros.Identifique as afirmativas corretas: a) I e III. b) I e IV. c) III e IV. d) II e III. e) II e IV. Alternativa marcada: d) II e III. Justificativa: Resposta correta: II e III.As classes na programação orientada a objetos são responsáveis por descrever as características e as ações que o objeto poderá realizar. Verdadeira. Classe é um conjunto de códigos de programação que definem um modelo para a criação de um ou mais objetos. É uma estrutura capaz de representar diferentes objetos, com propriedades distintas, mas com as mesmas características. A classe é o modelo para a criação dos objetos.Os métodos de acesso Getters são responsáveis por recuperar valores atribuídos às propriedades e que se encontram armazenados na memória de um objeto. Não podem ser do tipo void. Verdadeira. Os métodos Getters nunca são do tipo void, pois sempre retornam um valor, devendo ser do mesmo tipo do atributo que irá retornar. Distratores:Os atributos definem um conjunto de descritores do objeto de forma geral são capazes de realizar as ações necessárias do objeto para o contexto do sistema. Falsa. Os atributos de uma classe são responsáveis por descrever o objeto quanto as suas características, mas não são responsáveis pela realização das ações.Os métodos de acesso Setters são responsáveis por realizar a atribuição e o armazenamento na memória de uma propriedade do objeto. Se necessário, eles podem retornar parâmetros. Falsa. Os métodos Setters são sempre do tipo void, porque nunca devem retornar nada. 0,50/ 0,50 4 Código: 36637 - Enunciado: Durante o desenvolvimento de uma aplicação na linguagem Java, com os conceitos de programação orientada a objetos, foi implementado o método a seguir: public double calcularVenda(double val, double perc, int qtd) { ............. } Determine o uso de polimorfismo de sobrecarga de métodos que está sendo aplicado de forma correta: a) public int Venda(double val, double perc, int qtd) b) public double calcularVenda(double v, double p, int q) c) public int calcularVenda(int qtd, double val, double perc) d) public double calcularVenda(double perc, double val, int qtd) e) public double calcular(double val, int qtd, double perc) Alternativa marcada:c) public int calcularVenda(int qtd, double val, double perc) Justificativa: Resposta correta: public double calcularVenda(double perc, double val, int qtd)A sobrecarga de métodos é obtida ao se criar mais de um método com o mesmo nome em uma mesma classe. Para isso, é importante que esses métodos possuam diferentes assinaturas de métodos.Esse método possui o mesmo nome do método original e possui 1,00/ 1,00 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732100/d64294e6-5eb9-11e8-8a4d-0242ac110036/ 3/9 uma assinatura diferente. Distratores:public int Venda(double val, double perc, int qtd). Incorreta. Não possui o mesmo nome do método original.public double calcular(double val, int qtd, double perc). Incorreta. Não possui o mesmo nome do método original.public double calcularVenda(double v, double p, int q). Incorreta. Esse método possui o mesmo nome, mas está incorreto porque tem a mesma assinatura do método original.public double calcularVenda(double perc, double val, int qtd). Incorreta. Esse método possui o mesmo nome, mas está incorreto porque tem a mesma assinatura do método original. 5 Código: 36876 - Enunciado: Durante o desenvolvimento de um projeto, verificou-se a necessidade de implementar o conceito de Interface na classe Triathlon. Nesse projeto, além da classe Triathlon, também são implementadas três modalidades de esportes diferentes: Nadar, Correr e Ciclista.Analise a implementação da classe Triathlon para obter as informações necessárias para a codificação correta utilizando o conceito de interface. public interface Triathlon { int IDADEMINIMA = 15; void getIDADEMINIMA(); void aquecer(); } Avalie as informações apresentadas nos itens I e II e a relação proposta entre elas. I. int IDADEMINIMA = 15; - Terá o mesmo valor em todos os objetos (Compartilhada / Atributo de classe) e não poderá sofrer alteração do seu valor.PORQUEII. IDADEMINIMA é static e final. A respeito dessas afirmativas, assinale a opção correta. a) A afirmativa I é uma proposição verdadeira e a II é falsa. b) As afirmativas I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. c) As afirmativas I e II são proposições falsas. d) As afirmativas I e II são proposições verdadeiras e a II é uma justificativa correta da I. e) A afirmativa I é uma proposição falsa e a II é verdadeira. Alternativa marcada: d) As afirmativas I e II são proposições verdadeiras e a II é uma justificativa correta da I. Justificativa: Resposta correta: As afirmativas I e II são proposições verdadeiras e a II é uma justificativa correta da I.int IDADEMINIMA = 15; - Terá o mesmo valor em todos os objetos (Compartilhada / Atributo de classe) e não poderá sofrer alteração do seu valor. Verdadeira. Interface em Java é uma classe abstrata onde todos os seus métodos são abstract e public e seus atributos são static e final implicitamente.IDADEMINIMA é static e final. Verdadeira. Interface em Java é uma classe abstrata onde todos os seus métodos são abstract e public e seus atributos são static e final implicitamente.A afirmativa II é justificativa da I, pois não é preciso usar os modificadores, pois eles são implícitos às interfaces. 1,50/ 1,50 6 Código: 36641 - Enunciado: Um estudante está desenvolvendo uma aplicação para realização de cálculos físicos, onde necessita definir o valor do coeficiente de dilatação linear do aço, que é de 11*10-6. Sabendo-se que esse valor é constante em toda a aplicação.Examine as opções de instruções a seguir e determine aquela que permite que seja definido um atributo cujo valor seja constante, ou seja, o seu valor, após ser inicializado, não poderá mais ser alterado durante a execução da aplicação para o coeficiente de dilatação do aço. a) public const double aco = 0.000011; b) public abstract double aco = 0.000011; c) public static double aco = 0.000011; d) public double aco = 0.000011; e) public final double aco = 0.000011; Alternativa marcada: c) public static double aco = 0.000011; Justificativa: Resposta correta: public final double aco = 0.000011;.Um atributo é dito final quando o seu valor, após ser inicializado, não poderá mais ser alterado durante a execução da aplicação, o seu valor será constante. Distratores:public static double aco = 0.000011;. Incorreta. Um atributo é dito estático quando é compartilhado por todas as instâncias da classe, ou seja, seu conteúdo é compartilhado por todos os objetos criados.public double aco = 0.000011;. Incorreta. Um atributo sem modificador pode ser alterado durante a execução da aplicação.public abstract double aco = 0.000011;. Incorreta. Um atributo não pode receber o modificador abstract, que é utilizado apenas com métodos. Um método abstract é aquele que não implementado em uma classe abstrata ou interface.public const double aco = 0.000011;. Incorreta. O modificador const não faz parte da linguagem Java. 0,00/ 1,00 7 Código: 36645 - Enunciado: Um desenvolvedor precisa criar uma classe para atender às necessidades de uma aplicação, utilizando os conceitos de programação orientada a objetos implementada na linguagem Java.Considere os atributos a seguir para a classe: ClasseAtributosMétodosViolaoMarca: textoNúmero Cordas: inteiroImprimir (exibe todos os valores dos atributos do objeto).Cadastrar (recebe todos os valores dos atributos e armazena no objeto).EntradaDados (realiza a entrada de dados dos atributos do objeto). 1,50/ 1,50 28/11/2019 Ilumno ilumno.sgp.starlinetecnologia.com.br/ilumno/schedule/resultcandidatedetailprint/2732100/d64294e6-5eb9-11e8-8a4d-0242ac110036/ 4/9 Construa a classe Violao, definindo os seus atributos e implementando os métodos solicitados.Utilize a boa prática de programação em Java. Resposta: Justificativa: Expectativa de resposta:public class Violao{String marca;int numeroCordas;public void imprimir(){ System.out.println(“Marca:” + marca); System.out.println(“Número Cordas:” + numeroCordas);}public void entradaDados(){ Scanner ent = new Scanner(System.in); System.out.println(“Marca:”); setMarca(ent.nextLine()); System.out.println(“Número Cordas:” + numeroCordas); setNumeroCordas(Integer.parseInt(ent.nextLine()));}public void cadastrar(String m, int nc){ setMarca(m); setNumeroCordas(nc);}} 8 Código: 36883 - Enunciado: Você faz parte de uma equipe de projeto que precisa desenvolver uma aplicação para a indústria de calçados. A aplicação deve ser criada na linguagem Java seguindo os critérios conceituais da programação orientada a objetos. A equipe é composta por três desenvolvedores, dos quais um deve desenvolver a aplicação, outro a classe Calcado e você deve desenvolver a classe Sapato.A sua tarefa é desenvolver a classe Sapato, conforme a modelagem a seguir: Classe Calcado:Definição dos atributos;Os métodos de acesso dos atributos.Cimco métodos construtores.Métodos: Imprimir, Cadastrar e EntradaDados. Classe Sapato:• Definição dos atributos.• Os métodos de acesso dos atributos.• Cinco métodos construtores.• Métodos: Imprimir e Cadastrar. Desenvolva a codificação na linguagem Java da classe Sapato:Após analisar a situação problema, você deve partir da premissa (certeza) de que a classe Calcado já se encontra pronta e de acordo com os critérios apresentados anteriormente.A classe Sapato deverá reaproveitar ao máximo todos os atributos e métodos disponibilizados pela classe Calcado.A classe Sapato deverá reaproveitar no mínimo um método construtor da classe Calcado.Lembre-se de criar apenas a classe Sapato.Utilize a boa prática de programação em Java. Cuidado com o tamanho da letra para que caiba no espaço de resposta. Resposta: Justificativa: Expectativa de resposta:import java.util.Scanner; public class Sapato extends Calcado{ String cor; public String getCor() { return cor; } public void setCor(String c) { cor = c; } public Sapato()
Compartilhar