Questões de Concurso
Sobre java em programação
Foram encontradas 2.549 questões
O trecho que substitui corretamente a linha tracejada é:
Java é uma linguagem de programação de alto nível, orientada a objetos e multiplataforma. Foi desenvolvida pela Sun Microsystems (adquirida posteriormente pela Oracle Corporation), na década de 1990, e desde então tornou-se uma das linguagens de programação mais populares e amplamente utilizadas em todo o mundo.
Disponível em: https://www.java.com/pt-BR/. Acesso em: 20 fev. 2024.
Em Java, o modificador de acesso que permite que uma variável, método ou classe seja acessado apenas por classes do mesmo pacote, é o modificador:
I. É correto afirmar que um dos defeitos da tecnologia Java é a portabilidade do seu código, uma vez que sua Máquina Virtual não conversa com os diferentes sistemas operacionais.
II. É correto afirmar que a Máquina Virtual JAVA, além de ser um “tradutor de código”, responsabiliza-se pela execução das pilhas, pelo gerenciamento de memória, pelos threads, chegando até mesmo a limpar o excedente de lixo na memória virtual.
Marque a alternativa CORRETA:
I. Entre as plataformas principais que compõem a tecnologia Java, estão: Java SE (Java Platform, Standard Edition), que é o fundamento da plataforma, na qual estão o ambiente de execução e as bibliotecas comuns; Java EE (Java Platform, Enterprise Edition) voltada para internet e para o desenvolvimento de aplicações corporativas e Java Card direcionada aos dispositivos embarcados com limites de processamento e armazenamento, como smart cards e o Java Ring.
II. Entre as plataformas específicas que compõem a tecnologia Java, estão: Java ME (Java Platform, Micro Edition) focada no desenvolvimento de aplicações para dispositivos móveis e embarcados; JavaFX responsável pelo desenvolvimento de aplicações multimídia em desktop/web, o chamado JavaFX Script e dispositivos móveis conhecido como JavaFX Mobile.
Marque a alternativa CORRETA:
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?
iReports é uma ferramenta de geração de relatórios de código aberto e gratuita, baseada em Java. Ela permite que desenvolvedores criem relatórios personalizados para aplicações web e desktop. iReports é uma ferramenta poderosa e flexível que pode ser usada para criar uma variedade de relatórios, desde os simples até os complexos.
A função do arquivo .jrxml em iReports é
Conside o seguinte código em Java.
Scanner scanner = new Scanner(System.in);
System.out.print(“Digite seu nome: “);
String nome = scanner.nextLine();
System.out.print(“Digite sua idade: “);
int idade = scanner.nextInt();
System.out.println(“Nome: “ + nome);
System.out.println(“Idade: “ + idade);
scanner.close();
A respeito de comandos de entrada e saída, pode-se afirmar que
A tecnologia Java tem especificações muito bem definidas para implementação de uma das principais características de uma linguagem de programação orientada a objetos, chamada polimorfismo. A respeito de polimorfismo em orientação a objetos com Java, analise as assertivas a seguir.
I. A utilização de herança com a implementação de sobrescrita de método pode ser uma técnica utilizada para implementar polimorfismo em Java.
II. Sobrecarga de método é uma técnica para redefinir métodos de classes pai para que possamos utilizar polimorfismo em Java.
III. A definição de interfaces e classes que implementam essas interfaces é uma das principais técnicas para a implementação de polimorfismo em Java.
É correto o que se afirma em
Um programador criou um código Java com a seguinte aplicação “ApplicationMeuApp.java” e salvou no pacote “MeuApp”. Adicionalmente, salvou as classes “Contact.java”, “DialUp.java” e “Adsl.java” no mesmo pacote. Os códigos dos referidos arquivos Java são apresentados a seguir:
Contact.java |
package MeuApp; public interface Contact( public void connect (); } |
DialUp.java |
package MeuApp: public class DialUp implements Contact { @override public void connect(){ System.out.println("DialUpdialing..."); } } |
Adsl.java |
package MeuApp; public class Adsl implements Contact f @override public void connect () 1 System.out.printin("Adsl dialing..."); } } |
ApplicationMeuApp.java |
package MeuApp: public class ApplicationMeuApp { public static void main(String[] args) { Contact DialUp = new DialUp(); DialUp.connect (); Contact Adsl = new Adsl(); Adsl.connect (); } } |
Analisando o código, considere as seguintes afirmações:
I – No código ocorre o conceito de herança.
II – No código ocorre o conceito de polimorfismo.
III – Os objetos DialUp e Adsl criados não fazem referência a um objeto do tipo Contact, mas se referenciam a partir da implementação do método connect.
Assinale a alternativa CORRETA:
A seguir, é apresentado um código na linguagem de programação Java.
Livro.java
public class Livro {
private String nome;
protected double valor;
public Livro(String nome, double valor) {
this.nome = nome;
this.valor = valor;
}
public String getNome() {
return nome;
}
}
Impresso.java
public class Impresso extends Livro {
private int paginas;
public Impresso(String nome, double valor, int paginas) {
super (nome, valor);
this.paginas = paginas;
}
public int getPaginas( ) {
return paginas;
}
public double getValor ( ) {
return valor + 0.05 * paginas;
}
}
Ebook. java
public class Ebook extends Livro {
private int bytes;
public Ebook(String nome, double valor, int bytes) {
super (nome, valor);
this.bytes = bytes;
}
public int getBytes() {
return bytes;
}
public double getValor() {
return valor;
}
}
Utilizando a engenharia reversa nesse trecho de código, o diagrama de classes da UML corresponde é:
Código fonte em Java para as questões 36 e 37.
import java.util.ArrayList;
public class MyTestef
public static void main(Stringl] args) 1
Stack s = new Stack();
s.push(1):
s.push(2):
s.push(3):
s.clear ();
s.push(4):
s.push(5):
s.push(6);
System.out.println(s);
}
private static class Stack extends ArrayList<Object>1
private int top = 0;
public void push(Object element){
add(top++, element);
}
public Object pop (){
return remove(--top);
}
}
}
O código implementa de uma estrutura de dados que estende uma classe concreta ArrayList para outra classe concreta Stack. A classe ArrayList possui alguns métodos como o add() (adiciona elementos na lista), o remove() (remove elementos da lista) e o clear() (que remove todos os elementos da lista).
Considere as afirmações relacionadas ao código fonte.
I – O método clear() não é executado porque ele não foi implementado na classe Stack.
II – A herança entre essas classes gera um alto grau de acoplamento.
III – Após a execução do método clear(), a variável top ficará desatualizada.
Está CORRETO o que consta em:
Código fonte em Java para as questões 36 e 37.
import java.util.ArrayList;
public class MyTestef
public static void main(Stringl] args) 1
Stack s = new Stack();
s.push(1):
s.push(2):
s.push(3):
s.clear ();
s.push(4):
s.push(5):
s.push(6);
System.out.println(s);
}
private static class Stack extends ArrayList<Object>1
private int top = 0;
public void push(Object element){
add(top++, element);
}
public Object pop (){
return remove(--top);
}
}
}
O código implementa de uma estrutura de dados que estende uma classe concreta ArrayList para outra classe concreta Stack. A classe ArrayList possui alguns métodos como o add() (adiciona elementos na lista), o remove() (remove elementos da lista) e o clear() (que remove todos os elementos da lista).
Após executar o código, qual será o resultado?
Código fonte em Java para as questões 34 e 35.
package com.example. demo;
public class MyCalc {
public static void main(String[] args) {
double amount = 1000;
double intRate = 2;
int period = 12;
CalcSrv c = new CalcSrv(new CalcLC());
double fv = c.fValue (amount, intRate, period);
System.out.printf("VF of LC:%.2\n", fv);
c = new CalcSrv (new CalcCDB());
fv = c.fValue(amount,intRate, period);
System.out.printf("VE of CDB:%.2f", fv);
}
private static class CalcSrv {
private CalcFV calcsrv;
public CalcSrv(CalcFV calcsrv) {
this.calcsryv = calesrv;
}
public double fvalue(double amount, double intRate, int period) {
amount = amount + calcsrv.calc(amount, intRate, period);
return amount;
}
}
interface CalcFV {
double calc(double amount, double intRate, int period);
}
private static class CalcLC implements CalcFV{
@Override
public double calc(double amount, double intRate, int period)
return (amount * Math.pow(1 + intRate/100, period)) - amount;
}
}
private static class CalcCDB implements CalcFV{
@Override
public double calc(double amount, double intRate, int period){
double fv = amount * Math.pow(1 + intRate/100, period);
if (period >12)
return (fv - amount) * 0.85;
return (fv - amount) * 0.78;
}
}
}
Considere os princípios e padrões de projetos implementados no código.
I – Injeção de dependência
II – Inversão de controle
III – Injeção por construtor
Está CORRETO o que consta em:
A seguir, é apresentado um código que implementa uma estrutura de dados utilizando a linguagem de programação Java. A classe LinkedList é uma implementação de fila convencional e utiliza o método add() para incluir um elemento na fila e o remove() para removê-lo. A classe Stack implementa uma pilha e utiliza o método push() para empilhar e o pop() para desempilhar.
import java.util.Stack;
import java.util.Queue;
import java.util.LinkedList;
public class Tad {
public static void main(String[] args) {
Stack<String> s = new Stack<String>();
Queue<String> q = new LinkedList<String> O;
s.push("Z");
s.push("X");
q.add(s.pop());
s.push("y");
q.add(s.pop());
q.add ("W");
q.add(s.pop());
q.add(q.remove());
s.push("H");
s.push(q.remove());
q.remove();
System.out.print("stack: " + s);
System.out.println(", Queue: "+ g):
}
}
Após a execução, qual é a saída do programa acima?
Qual é a função do operador "instanceof' em Java?
Analise o programa abaixo:
public class DoWhileTest
{
---------public static void main( String[] arqs )
---------{
------------------int counter = 0;
------------------do
------------------{
-------------------------++counter;
-------------------------System.out.printf("%d ", counter);
------------------} while ( counter++ <= 10);
------------------System.out.println();
---------}
}
Quais números serão impressos, respectivamente, após a execução desse trecho de programa Java?
Com base na linguagem de programação Java, assinale a opção correta.
Analise a declaração da classe CaixaEletronico abaixo:
public class CaixaEletronico
{
-----------public void displayMessage()
-----------{
----------------------System.out.println("Bem-Vindo!");
----------------------System.out.println("Digite o número da sua
conta:");
-----------}
}
Qual opção apresenta a mensagem que será exibida ao tentar executar CaixaEletronico digitando java CaixaEletronico na janela de comando?
Em relação à linguagem de programação Java, é correto afirmar que: