Questões de Concurso Sobre java em programação
Foram encontradas 2.453 questões
Resolva questões gratuitamente!
Junte-se a mais de 4 milhões de concurseiros!
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?