

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Observe o trecho de código escrito na linguagem Java dentro de um método main()
byte n;
n = 20;
n = (byte) (n * 10);
System.out.println(n);
Pode-se afirmar corretamente que o valor impresso será:
–128
–56
0
127
200
A classe Avaliacao e Pessoa estão no mesmo pacote e foi executado com o Java 8. Assinale a opção que corresponde ao resultado exibido após a execução do método public static void main(String[] args).
1 - public class Avaliacao {
2 - ____ public static void main(String[] args) {
3 - ___________ final Pessoa p1 = new Pessoa(“Pedro”, 1, 7);
4 - ___________ final Pessoa p2 = new Pessoa(“Antonio”, 2, 10);
5 - ___________ final Pessoa p3 = new Pessoa(“Paula”, 3, 9);
6 - ___________ final Pessoa p4 = new Pessoa(“Antonia”, 4, 10);
7 - ___________ final Pessoa p5 = new Pessoa(“Cleir”, 5, 10);
8 - ___________ final Pessoa p6 = new Pessoa(“Rose”, 6, 6);
9 - ___________ List<Pessoa> pessoas = Arrays.asList(p1,p2,p3,p4,p5,p6);
10 - ___________ pessoas.stream()
11 - __________________ .sorted(Comparator.comparing(Pessoa::getNota))
12 - __________________ .map(Pessoa::getNome)
13 - __________________ .sorted()
14 - __________________ .forEach(System.out::println);
15 - ____ }
16 - }
17 - class Pessoa {
18 - ____ private String nome;
19 - ____ private int id;
20 - ____ private int nota;
21 - ____ public Pessoa(String nome, int id, int nota) {
22 - __________ super();
23 - __________ this.nome = nome;
24 - __________ this.id = id;
25 - __________ this.nota = nota;
26 - ____ }
27 - ____ public int getNota() {
28 - _________ return nota;
29 - ____ }
30 - ____ public String getNome() {
31 - _________ return nome;
32 - ____ }
33 - }
Antonia,Antonio,Cleir,Paula,Pedro,Rose.
Antonio,Antonia,Cleir,Paula,Pedro,Rose.
7,10,9,10,10,6.
6,7,9,10,10,10.
1, 2, 3, 4, 7, 6.
No Contexts and Dependency Injection (CDI) versão 2.0, da plataforma Java EE (Enterprise Edition), existem cinco tipos de escopo padrão, definidos no pacote javax.enterprise.context. Quais são?
@RequestScoped, @ApplicationScoped, @SessionScoped, @ConversationScoped e @Dependent.
@ResponseScoped, @InterfaceScoped, @CookieScoped, @ConversationScoped e @DependentScoped.
@Request, @Application, @Session, @Conversation e @Dependent.
@RequestScoped, @ApplicationScoped, @SessionScoped, @ConversationScoped e @DependentScoped.
@ResponseScoped, @InterfaceScoped, @CookieScoped, @ExchangeScoped e @Dependent.
O trecho de código abaixo, em Java Persistence API (JPA) versão 2.2, apresenta a declaração de uma chave primária composta de uma entidade de um banco de dados.
@__________ public class PessoaId implements Serializable { String nome; String sobrenome; } @__________ public class Pessoa { @__________ PessoaId id; String endereco; } |
Assinale a alternativa que preenche, correta e respectivamente, as lacunas do trecho de código acima.
Embeddable – Entity – EmbeddedId
Instance – Entity – Primary
Association – Table – Primary
Instance – Table – EmbeddedId
Embeddable – Entity – Primary
O JUnit considera que os resultados de um teste unidade não devem depender da ordem de execução e não permite que se interfira na ordem de execução de métodos de teste.
Certo
Errado
Considere a seguinte função recursiva que calcula o n-ésimo número de Fibonacci.
public long fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
Agora, imagine que você deseja calcular o 50º número de Fibonacci usando essa função. No entanto, ao executar o código, ele levará muito tempo para concluir. Por que o cálculo do 50º número de Fibonacci usando essa função recursiva levará tanto tempo?
A função recursiva de Fibonacci não é implementada corretamente, e a recursão entra em um loop infinito.
A função recursiva de Fibonacci tem complexidade exponencial, o que a torna extremamente lenta para valores grandes de “n”.
A função recursiva de Fibonacci requer um grande consumo de memória devido à pilha de chamadas recursivas.
O cálculo do 50º número de Fibonacci é impossível de ser realizado com precisão usando essa função devido a limitações numéricas em Java.
O código fornecido tem um erro de compilação, e o 50º número de Fibonacci não pode ser calculado dessa forma.
Considerando o programa Java abaixo:
public class Animal {
protected String nome;
public Animal(String nome) {
this.nome = nome;
}
public void fala() {
System.out.println("Eu sou um animal.");
}
}
public class Cachorro extends Animal {
public Cachorro(String nome) {
super(nome);
}
public void fala() {
System.out.println("Au! Au!");
}
}
public class Exemplo {
public static void main(String[] args) {
Animal[] animais = new Animal[2];
animais[0] = new Cachorro("Bidu");
animais[1] = new Animal("Floquinho");
for (Animal animal : animais) {
animal.fala();
}
}
}
Qual é o resultado de execução desse programa?
O programa não compila devido a um erro de sintaxe.
O programa compila e imprime "Au! Au!" duas vezes.
O programa compila e imprime na ordem "Au! Au!" e "Eu sou um animal.”.
O programa compila e imprime "Eu sou um animal." duas vezes.
O programa compila e imprime na ordem "Eu sou um animal." e "Au! Au!".
Considerando os padrões de projetos na linguagem de programação Java, analise as assertivas e julgue V, para as verdadeiras, ou F, para as falsas.
( ) O padrão de projeto Facade garante que determinada classe só seja instanciada uma única vez, e estabelece um ponto de acesso global a ela.
( ) O padrão de projeto Singleton fornece um ponto por meio do qual um objeto controla o acesso a outro e as mudanças ao objeto instanciado acontecem no momento de execução ou interrupção.
( ) O padrão de projeto Abstract Factory fornece uma interface para criar coleções de objetos correlatos ou que possuam dependências sem especificar suas classes concretas.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
F - F - V.
V - V - F.
F - V - V.
V - F - F.
V - F - V.
Analise o seguinte trecho de código Java:
import java.util.Set; import java.util.HashSet; public class Conjunto { public static void main(String[] args) { Set<Integer> conjunto = new HashSet<Integer>(); conjunto.add(2); conjunto.add(5); conjunto.add(1); conjunto.add(2); System.out.println(conjunto.toString()); } } |
O que será escrito na saída padrão após a execução?
[2, 5, 1, 2]
[2, 5, 1]
[1, 2, 2, 5]
[1, 2, 5]
Mensagem de erro de compilação.
Considere o seguinte programa escrito em Java:
class Conta {
double saldo;
Conta(double saldo) { this.saldo = saldo; }
void sacar(double qtd) { saldo -= qtd; }
void depositar(double qtd) { saldo += qtd; }
void render() {}
}
class ContaPoupanca extends Conta {
ContaPoupanca(double saldo) { super(saldo); }
void render() {saldo *= 1.005; }
}
public class Programa {
public static void main(String[] args) {
Conta c1 = new Conta(1000);
c1.render();
ContaPoupanca c2 = new ContaPoupanca(1000);
c2.render();
Conta c3 = new ContaPoupanca(1000);
c3.render();
System.out.println(c1.saldo + c2.saldo + c3.saldo);
}
}
Ao compilar e executar esse programa, o valor impresso na tela é:
3005.0
3000.0
3100.0
3000.1
3010.0
Apresenta-se, a seguir, um trecho de código escrito na linguagem Java dentro de um método main.
int a = 10;
int b = 20;
int c = 0;
int d = 0;
int resultado;
c = a > b ? 1 : 2;
d = a*c > b ? 5 : 3;
resultado = c + d;
Pode-se afirmar corretamente que o valor da variável resultado será:
0
4
5
6
7
Qual seria o resultado esperado se a linha de código dentro do laço fosse substituída pela que segue abaixo?
r1 += Math.pow(i, 2);
13
14
15
19
36
Analise o seguinte trecho de código escrito na linguagem de programação Java:
public class Exemplo {
int a = 2;
static int b = 4;
public static void main(String[] args) {
int a = 3;
Exemplo e = new Exemplo();
System.out.print("a=" + a + "; ");
System.out.print("b=" + b + "; ");
e.alteraValores(a);
System.out.print("a=" + e.a + "; ");
System.out.print("b=" + b + "; ");
}
public void alteraValores(int a) {
a++;
b++;
}
}
Assinale a saída CORRETA após a execução do código:
a=2; b=4; a=2; b=5;
a=2; b=4; a=3; b=4;
a=3; b=4; a=2; b=5;
a=3; b=4; a=3; b=4;
Analise o seguinte trecho de código, em linguagem Java:
public static void main(String[] args) {
new Thread(() -> System.out.println("Olá mundo 1"));
new Thread(() -> System.out.println("Olá mundo 2"));
}
Quando compilamos e executamos esse código, o que é apresentado na console?
Olá mundo 1, Olá mundo 2
Olá mundo 1
Olá mundo 2
Não é apresentada nenhuma mensagem na console.
Não há garantia de ordem nas mensagens que serão apresentadas.
No pacote Javax.swing da linguagem Java, que é utilizado para o desenvolvimento de interfaces gráficas, a classe que representa uma janela é o JFrame. O método utilizado para liberar os recursos utilizados pelo JFrame (fechar a janela) é:
dispose()
clear()
rm()
clr()
release()
Pedro está desenvolvendo um sistema em Java e deseja criar uma classe "Carro", que possuirá uma propriedade "velocidade" e um método "acelerar". No entanto, ele quer garantir que a velocidade não possa ser acessada ou modificada diretamente por outras classes, apenas pelo método "acelerar". Qual das seguintes opções melhor representa a implementação dessa classe?
public class Carro {
public int velocidade;
public void acelerar() {
velocidade += 10;
}
}
public class Carro {
private int velocidade;
public void acelerar() {
this.velocidade += 10;
}
}
class Carro {
protected int velocidade;
public void acelerar() {
velocidade += 10;
}
}
public class Carro {
int velocidade;
public void acelerar() {
velocidade += 10;
}
}
private class Carro {
public int velocidade;
public void acelerar() {
velocidade += 10;
}
}
Considere o seguinte trecho de código de um programa Java:
public class CA {
public void m1() {
System.out.println("m1 CA");
}
}
public class CB extends CA {
public void m1() {
System.out.println("m1 CB");
}
}
Considerando que as dependências necessárias estejam devidamente referenciadas via import, é correto que o trecho de código acima
é compilado corretamente, sem erros.
apresenta um erro de compilação, pois falta a anotação @Override em m1 de CB.
apresenta um erro de compilação, pois falta a palavra-chave override na declaração de m1 de CB.
apresenta um erro de compilação, pois uma subclasse não pode declarar um método com o mesmo nome de um método já existente em sua superclasse.
apresenta um erro de compilação, pois falta a anotação @Override em m1 de CA.
Existem duas estruturas de repetição presentes no código em Java apresentado.
Certo
Errado
A estrutura condicional if‑else é utilizada, exclusivamente, na linguagem de programação Java.
Certo
Errado
A Java API fornece uma vasta coleção de classes predefinidas, que contém métodos para realizar diversas funções. Com relação às classes e métodos do Java, analise as assertivas abaixo.
I. Classes e métodos modularizam os programas, separando as tarefas em unidades autocontidas.
II. Um motivo para modularizar um programa é o fato de que o desenvolvimento é mais gerenciável.
III. Dividir um programa em métodos e classes torna o programa mais difícil de ser depurado.
IV. Quando um método chamado termina sua tarefa, ele retorna o controle para o chamador.
V. É possível criar programas a partir de classes e métodos existentes.
Sobre as assertivas acima, é correto afirmar que
apenas uma é falsa.
todas são verdadeiras.
apenas três são verdadeiras.
apenas duas são verdadeiras.