Prévia do material em texto
A+ Alterar modo de visualização
Peso da Avaliação 1,50
Prova 60913216
Qtd. de Questões 10
Acertos/Erros 5/5
Nota 5,00
1
Na linguagem de programação Java existem vários métodos e classes, que nos auxiliam em várias
áreas, sendo uma delas a parte de cálculos (como do número pi, do número de euler), no cálculo de
funções trigonométricas (senos, cossenos, tangentes etc.) e outras funcionalidades. Sobre a
classe/metódo “Math.Pow(i, j)”, analise as sentenças a seguir:
I – É um método da linguagem Java que calcula i elevado a j.
II – É um método da classe Math que calcula i elevado a j.
III – É um método que multiplica i por j.
IV – É um método que calcula o resto da divisão.
V – É um método que retorna o inteiro de uma divisão
Assinale a alternativa CORRETA:
A As sentenças I e IV estão corretas.
B As sentenças I e II estão corretas.
C As sentenças II e V estão corretas.
D As sentenças I e III estão corretas.
2
Na programação orientada a objetos da linguagem Java, apenas os métodos dentro da classe
conseguem acessar seus atributos, tanto para ler como para modificar. Métodos de outras classes não
conseguem acessar diretamente esses atributos. Assim, pode se obter o conceito de encapsulamento.
Existem dois métodos especiais para acessar os métodos e atributos de outras classes que são private.
Sobre o nome desses métodos, analise as sentenças a seguir:
I – Método getters.
II – Método setters.
III – Método main.
IV – Método return.
V – Método Set.
Assinale a alternativa CORRETA:
A As sentenças I e IV estão corretas.
B As sentenças I e II estão corretas.
C As sentenças I e III estão corretas.
D As sentenças II e V estão corretas.
3
Existem três características mais importantes na Programação Orientada a Objetos (POO). Neste
sentido, temos um conceito de programação orientada a objetos que promove a reutilização de
software.
Qual é esse conceito?
A Abstração de dados.
B Herança.
C Sobrecarga de métodos.
D Polimorfismo.
4
Na Implementação em Java, encapsular, basicamente, significa ocultar. No caso específico do Java,
marcamos com modificadores de visibilidade os atributos, métodos ou classes que desejamos
encapsular. São quatro os modificadores de visibilidade da linguagem de programação Java: Private;
Public; Default; Protect.
Sobre a definição para “Protect”, assinale a alternativa CORRETA:
A Este modificador indica que o atributo ou método será visível somente na subclasse de um relacionamento de herança.
O modificador default é implementado simplesmente sem colocar nenhum modificador na frente
B da classe, atributo ou método. Ele indica que existe visibilidade dentro do pacote onde você
estiver.
Fornece acesso dentro da aplicação onde estiver declarado, no caso de classes, atributos ou
C métodos. Será visível a todas as demais classes da aplicação, independentemente do pacote onde estiver. Logicamente, existe a necessidade da referenciação da classe que se deseja utilizar, caso
esta esteja em outro pacote.
D Fornece acesso somente dentro da classe onde estiver declarado, no caso de atributos ou métodos. Classes privadas somente fazem sentido se forem internas a outra classe.
5 O paradigma da orientação a objetos aplicada no desenvolvimento de software possui a
vantagem de tornar o código-fonte reutilizável, mais legível, e fácil de realizar manutenção. O
polimorfismo permite que outras classes representem o comportamento de classes que elas
referenciam. Com relação às classes criadas no código-fonte, classifique V para as sentenças
verdadeiras e F para as falsas:
(1) public class Veiculo {
(2) public void parar(){}
(3)}
(4)
(5) public class Motocicleta extends Veiculo{
(6) public void parar(){
(7) System.out.println("Parando a motocicleta!!");
(8) }
(9)}
(10)
(11)//Veiculo utilitario esporte (SUV: Sport Utility Vehicle)
(12)public class Suv extends Veiculo{
(13) public void parar(){
(14) System.out.println("Parando o veículo utilitário!!");
(15) }
(16)}
(17)
(18) public class Principal {
(19) public static void main(String[] args){
(20) Veiculo veiculo1 = new Motocicleta();
(21) Veiculo veiculo2 = new Suv();
(22)
(23) veiculo1.parar();
(24) veiculo2.parar();
(25) }
(26)}
( ) Não existe o polimorfismo implementado entre as classes do exemplo, uma vez que a classe
Veiculo não é uma classe abstrata.
( ) Ao executarmos a classe Principal, ocorrerá um erro designando que a instância da classe
Veiculo nas linhas 20 e 21 são inválidas, pois recebem a instância de classes de outro tipo
(Motocicleta e Suv).
( ) Existe o polimorfismo implementado entre as classes do exemplo, mesmo a classe Veiculo sendo
uma classe concreta.
( ) A classe Veiculo referencia o comportamento das classes Motocicleta e Suv, e ao executarmos a
classe Principal, será impresso primeiramente a mensagem (Parando a motocicleta!!) e depois
(Parando o veículo utilitário!!).
Assinale a alternativa que apresenta a sequência CORRETA:
A F - V - V - F.
B V - F - F - V.
C F - F - V - V.
D V - V - F - F.
6 O conceito de classes abstrata, através de suas características especiais, fornece ao conceito de
herança uma maior confiabilidade, uma vez que as classes modeladas com herança precisam ser
melhor idealizadas e projetadas. Dessa forma, avalie o código-fonte da classe "Atleta":
package fontes;
public class Atleta{
private int pais;
private String modalidade;
private boolean medalistaOlimpico;
public abstract void competir(String modalidade) {
System.out.println("É especialista em " + modalidade);
}
public void competirPor(int pais){
System.out.println("O atleta compete por " + pais);
}
}
I- A classe em questão não apresenta nenhum problema de sintaxe.
II- O método "competirPor(int pais)" está gerando um erro de sintaxe, e adicionando a palavra-chave
"abstract", antes da palavra chave "void", resolverá o erro gerado.
III- O método "competirPor(int pais)" não gera erros de sintaxe, logo não necessita da palavra-chave
"abstract", antes da palavra-chave "void".
IV- O método "competir(String modalidade)" gera erro de sintaxe.
Assinale a alternativa CORRETA:
A As sentenças III e IV estão corretas.
B As sentenças II e IV estão corretas.
C As sentenças II e III estão corretas.
D As sentenças I e II estão corretas.
7 A sobrecarga de métodos, considerada um tipo de polimorfismo, é um mecanismo que permite
que dois ou mais métodos compartilhem o mesmo nome, contanto que tenham diferentes conjuntos
de parâmetros. Dessa forma, com o código-fonte apresentado, referente à classe Bicicleta e a sintaxe
aplicada ao polimorfismo de sobrecarga para os dois métodos construtores da referida classe, assinale
a alternativa CORRETA:
public class Bicicleta{
private char tamanhoQuadro;
private int numeroMarchas;
private char tamanhoRoda;
public void movimentar(){
System.out.println("O objeto bike está em movimento!!");
}
}
public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){
A this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas; } public
Bicicleta(char numeroMarchas){ this. numeroMarchas = numeroMarchas; }
public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){
B this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas;
this.tamanhoRoda = tamanhoRoda; } public Bicicleta(){ this.tamanhoRoda = tamanhoRoda;; }
C public Bicicleta(){ } public Bicicleta(char tamanhoQuadro){ this.tamanhoQuadro = tamanhoQuadro; }
public Bicicleta(){ } public Bicicleta(char tamanhoQuadro, int numeroMarchas, char
D tamanhoRoda){ this.tamanhoQuadro = numeroMarchas; this.numeroMarchas = tamanhoQuadro;
this.tamanhoRoda = tamanhoRoda; }
8
Em Orientação a Objetos, para que uma subclasse de uma classe possa ter seu próprio
comportamento, e mesmo assim compartilhar algumas das funcionalidadesda classe pai, deve-se
implementar um método.
Qual é esse método?
A Agregação.
B Abstração.
C Composição.
D Polimorfismo.
9 A herança, juntamente ao encapsulamento, o polimorfismo e a abstração, representa um dos
pilares da programação orientada a objetos e pode, quando bem modelada e utilizada, diminuir o
esforço na manutenção do código-fonte. Considerando o relacionamento de herança entre duas ou
mais classes, classifique V para as sentenças verdadeiras e F para as falsas:
( ) A herança possibilita o compartilhamento de atributos entre uma superclasse subclasse,
limitando esse compartilhamento para os atributos indicados com o modificador "private".
( ) A palavra-chave extends define que uma classe está estendendo outra, que em outras palavras
significa o uso de herança na linguagem de programação Java.
( ) A herança possibilita o compartilhamento de métodos entre uma superclasse subclasse, limitando
esse compartilhamento para alguns tipos especiais de métodos.
( ) A herança de métodos é possível, porém os métodos construtores podem ser reescritos através do
polimorfismo.
Assinale a alternativa que apresenta a sequência CORRETA:
A V - V - V - F.
B V - F - F - V.
C F - F - V - V.
D F - V - F - F.
10
A própria API do Java implementa a herança em diversos locais. Nas APIs descritas a seguir, assinale
a alternativa INCORRETA:
A TextFormat, MessageFormat e ChoiceFormat.
B Format, NumberFormat e SimpleDateFormat.
Imprimir
C MessageFormat, ChoiceFormat e SimpleDateFormat.
D NumberFormat, DateFormat e DecimalFormat.
1
2
3
4
8
10