Questoes Resolvidas em Sala

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 12

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

1) Qual será o valor da string c, caso o programa rode com a seguinte


linha de comando?

> java Teste um dois tres

public class Teste {


public static void main(String[] args) {
String a = args[0];
String b = args[0];
String c = args[0];
}
}

a) um
b) dois
c) tres
d) Teste
e) Irá ocorrer a exceção ArrayIndexOutOfBoundsException

2) Assinale a alternativa CORRETA. Qual(is) entre as seguintes expressões


é(são) valor(es) do tipo primitivo em Java?

I) 5.3f
II) true
III) 'a'
IV) "a"
V) null

a) I, II, III
b) I, II
c) I, II, IV
d) IV, V
e) nenhuma das anteriores

3) Qual será a saída do programa abaixo?

public class Inicia {


public static void main(String[] args) {
int a = 1;
boolean[] matriz = new boolean[1];
if(matriz[0]) a++;
System.out.println(a);
}
}

a) 1
b) 2
c) null
d) O código não vai compilar, pois matriz[0] não foi inicializada
e) O código irá compilar, mas uma exceção será lançada

Profº Alexandre EUGÊNIO da Silva Página 1


Curso Adonai QUESTÕES Disciplina Linguagem JAVA

4) Qual das palavras a seguir NÃO podem ser utilizadas como


identificadores?

a) Else
b) then
c) Goto
d) thread
e) 50valor

5) Qual das seguintes declarações fará com que a classe não possa ser
estendida (herdada)?

a) private class Senha {}


b) proteced class Senha {}
c) final class Senha {}
d) static class Senha {}
e) abstract class Senha {}

6) Qual será a saída do programa abaixo?

public class Teste {


int a;
public static void main(String args[]) {
a = 0;
double b = 2;
System.out.println(++a + b);
}
}

a) 3
b) 3.0
c) 2
d) 2.0
e) erro

7) Assinale a alternativa CORRETA. Qual(is) entre as seguintes


alternativas representa a declaração de uma construtor válido para a
classe Teste?

I) public void Teste(String s) {}


II) private Teste(String s, int a) {}
III) int Teste() {}
IV) protected contructor Teste() {}
V) Teste() {}

a) I, II, III
b) I, II, IV
c) I, II,
d) II, V
e) nenhuma das anteriores

Profº Alexandre EUGÊNIO da Silva Página 2


Curso Adonai QUESTÕES Disciplina Linguagem JAVA

8) Qual das afirmações a seguir é falsa?

a) Uma classe pode ter métodos estáticos e não-estáticos ao mesmo tempo.


b) Uma classe pode ter variáveis estáticas e não-estáticas ao mesmo
tempo.
c) Um método estático pode chamar um método não-estático.
d) Um método não-estático pode chamar um método estático.
e) Classes podem ser declaradas como estáticas.

9) (QT-INFO 2004) Em relação a linguagem de programação Java é correto


afirmar que:

a) Todos os métodos de uma classe abstrata devem ser abstratos.


b) Uma classe pode ter várias superclasses, mas pode implementar apenas
uma interface.
c) Não é possível instanciar uma interface, mas é possível instanciar uma
classe abstrata.
d) Os descendentes não-abstratos de uma classe abstrata não precisam
implementar todos os seus métodos abstratos.
e) Uma classe que implementa uma interface e deixa de definir algum
método dessa interface deve ser declarada como abstrata.

10) (QT-INFO 2005) Leia o código-fonte em Java a seguir e responda a


pergunta abaixo.

abstract class Navio {


protected static int i;
private int j;
abstract void f();
final void q() {}
// final void h() {} // LINHA 6
}

final class Fragata extends Navio {


int m;
void f() {}
void h() {}
// void k() {i++;} // LINHA 12
// void l() {j++;} // LINHA 13
// Fragata(int n) {m = n;} // LINHA 14

public static void main(String args[]) {


Navio mc = new Fragata();
}
}

Qual é a única linha de que se pode retirar o comentário assinalado em


Java pelo uso de barras duplas neste
código, sem introduzir erros?

a) nenhuma
b) LINHA 6
Profº Alexandre EUGÊNIO da Silva Página 3
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

c) LINHA 12
d) LINHA 13
e) LINHA 14

11) (QT-INFO 2005) Leia o código-fonte em Java a seguir e responda a


pergunta abaixo.

package esquadra;
class FragataLiberal {
int nomeComandante;
public int numeroCostado;
protected int velocidade;
private int dotacaoMunicao;
}

Que atributos da classe "FragataLiberal" são acessíveis fora do pacote


"esquadra"?

a) Nenhum
b) numeroCostado
c) numeroCostado e velocidade
d) nomeComandante, numeroCostado e velocidade
e) nomeComandante, numeroCostado, velocidade e dotacaoMunicao

12) (QT-INFO 2005) Leia o código-fonte em Java abaixo, observando que a


classe "Hino" usa herança ao derivar da nativa "Thread" e responda a
pergunta a seguir.

public class Hino extends Thread {


String refrao;
public Hino(String s) {
refrao=s;
}
public void run() {
System.out.println(refrao);
}
public static void main(String args[]) {
new Hino("Viva");
new Hino("Marinha");
}
}

Qual será o resultado ao se tentar compilar e executar o programa, usando


os comandos "javac" e "java", respectivamente?

a) Não compila.
b) Compila e executa, mas dispara uma exceção.
c) Compila e executa, mas não exibe nenhuma linha de texto na janela de
comando.
d) Compila, executa e exibe "Viva" na janela de comando.
e) Compila, executa e exibe "Viva" e "Marinha" na janela de comando.

Profº Alexandre EUGÊNIO da Silva Página 4


Curso Adonai QUESTÕES Disciplina Linguagem JAVA

13) Quais dos códigos abaixo irão compilar, assumindo que i é um inteiro
e b é um boolean?

I) if(i = 1) {}
II) if(b = false) {}
III) if(i) {}
IV) if(b | true) {}
V) if(b == i) {}

a) I
b) II, V
c) III, IV, V
d) II, IV
e) IV, V

14) Qual alternativa apresenta todos os tipos válidos como parâmetro para
a cláusula switch?

a) char, int, float


b) short, int, double
c) byte, int, String
d) char, byte, long
e) byte, short e char

15) Qual das afirmações a seguir é verdadeira?

a) O comando break dentro de um loop while faz com que o controle seja
passado para a próxima interação do loop.
b) O comando continue dentro de um loop while faz com que o controle seja
passado para o próximo bloco de código após o loop.
c) O comando return não pode ser utilizado dentro de loops.
d) Todas as afirmações acima são verdadeiras.
e) Todas as afirmações acima são falsas.

16) Qual será a saída do programa abaixo?

Obs: Considerar os resultados apresentados na versão 1.6

public class Teste {

public static void main(String args[]) {

try {
double f = 10.0 / 0.0;
System.out.println(f);

}
catch(ArithmeticException ae) {

System.out.println("Erro de Divisão");
}
Profº Alexandre EUGÊNIO da Silva Página 5
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

a) 0.0
b) 10.0
c) Infinity
d) / by Zero
e) Erro de compilação

17) (QT-INFO 2006) Coloque F(falso) ou V(verdadeiro) nas afirmativas


abaixo, em relação à manipulação de String "Marinha" usando a linguagem
de programação JAVA, assinalando, a seguir, a opção correta.

Obs: "ar" -> representa a string ar.


'2' -> represena o caracter 2.

Dado: String nome = "Marinha"

( ) nome.length() = 7
( ) nome.charAt(2) = 'a'
( ) nome.indexOf('i') = 3
( ) nome.length() + 3 = 10
( ) nome.length() + "3" = "73"

a) V V V F F
b) V F V V V
c) F F F V V
d) V V F F V
e) V F V V F

18) (QT-INFO 2006) Observer o trecho de programa:

public class Exemplo {

public static void main(String[] args) {

System.out.println("Marinha do Brasil");

Com base na classe Java acima, assinale a opção correta.


Obs: JVM (Java Virtual Machine).

a) O método main necessita receber o array args como parâmetro


para ser executado.
b) Os modificadores public e class são desnecessários para executar
o código.
c) Sua execução dependerá da versão da JVM em uso.
Profº Alexandre EUGÊNIO da Silva Página 6
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

d) Essa classe não será executada pela JVM.


e) O método main é o primeiro a ser chamado e executado pela JVM.

19) (QT-INFO 2006) Analise as afirmativas abaixo em relação ao recurso de


"multithreading" presente na linguagem de programação JAVA.

I - O código que executa realmente as operações de uma "thread" é


colocado no método start().
II - "thread" é um fluxo de execução de uma programa que pode ser
executado simultaneamente com outros fluxos.
III - A prioridade de uma "thread" é representada por uma constante
inteira que pode variar entre 0 e 5.
IV - O escalonador(scheduler) tem a função de manter a "thread" de mais
alta prioridade em execução.

Assinale a opção correta.

a) Apenas as afirmativas I, II e III são verdadeiras.


b) Apenas as afirmativas I e III são verdadeiras.
c) Apenas as afirmativas II e IV são verdadeiras.
d) Apenas a afirmativa IV é verdadeira.
e) Apenas a afirmativa III é verdadeira.

20) (QT-INFO 2007) Em relação à linguagem de programação JAVA, dada a


declaração:

Object[] str = {"a", "ab", "abc"}, o valor de str[1] é

a) "a"
b) "ab"
c) "abc"
d) " "
e) 0

21) (QT-INFO 2008) No contexto da linguagem JAVA, em qual das opções


abaixo todos os identificadores (separados por vírgula) são válidos?

a) soma, __nome, $salario, :resultado


b) _$aumento, nomeDoFuncionarioDoMes, 45andar
c) peso, __nome_Do_Funcionario, $salario_Mensal, idade3
d) .marca, 3vezes, $salario, :numero
e) .classe, _nome1, public, IDADE

22) (QT-INFO 2008) Observer as classes abaixo, escritas na linguagem


JAVA.

package aritmetica;
public class Operacoes {
private int soma(int x, int y) {
int resultado = x + y;
Profº Alexandre EUGÊNIO da Silva Página 7
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

return resultado;
}
}

package aritmetica;
public class Calculo {
public static void main(String[] args) {
Operacoes operacoes = new Operacoes();
System.out.print(operacoes.soma(3, 4));
}
}

Ao compilar e/ou executar a classe Calculo, qual será o resultado?

a) 7
b) Erro, pois não é possível fazer uma chamada a um método de outra
classe dentro do método main(String[] args).
c) 7.0
d) 1
e) Erro, pois o método soma(int x, int y) não pode ser acessado a partir
da classe Calculo.

23) (QT-INFO 2008) Considere o seguinte programa escrito na linguagem


JAVA:

public class Numeros {


public static void main(String[] args) {
int x,y;
double z;

x = 5;
y = 2;
z = x / y;
System.out.print(z);
}

Ao compilar e/ou executar esse programa, qual será o resultado?

a) Erro na compilação, pois os tipos de dados são incompatíveis.


b) 2.5
c) Erro na execução, pois não é possível fazer a conversão dinâmica dos
tipos de dados.
d) 2
e) 2.0

24) Assinale a alternativa CORRETA. Qual(is) do(s) objeto(s) se torna(m)


candidato(s) à coleta de lixo após a execução do método abaixo:

public void teste(Object a) {

Profº Alexandre EUGÊNIO da Silva Página 8


Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Object b = new Object();


String s = "123";
int i = 100;

a) b, s, i
b) b, s
c) b
d) s
e) i

25) Assinale a alternativa CORRETA. Qual das seguintes alternativas pode


aparecer dentro do código abaixo, com o objetivo de sobrecarregar o
método soma()?

public class Teste {

public int soma(int a, int b) {

return a + b;
}

// INSERIR AQUI

I) private int soma(int a, int b) { return a + b; }


II) public long soma(int a, int b) { return (long)a + b; }
III) public int soma(long a, long b) { return a + b; }
IV) void soma(int a) { a++; }
V) public int soma(int c, int d) { return c + d; }

a) I, II, III
b) III, IV
c) IV, V, I
d) II, I
e) nenhuma das anteriores

26) O que acontecerá ao compilar e executar a classe abaixo?

class A {}
class B {}

public class Teste {

public static void main(String args[]) {

A a = new A();
B b = new B();
Profº Alexandre EUGÊNIO da Silva Página 9
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

b = (B)a;

a) Compilação e execução sem problemas


b) Erro de compilação: objeto B não pode referenciar a
c) Erro de compilação: conversão do objeto a não é possível
d) Erro de execução
e) Nenhuma das alternativas anteriores

27) O que acontecerá com o código abaixo "A.java", ao ser compilado e


executado?

//A.java

public class A {

public B b;

public static void main(String args[]) {

A a = new A();
a.b = new B();
a.b.c = new C();
System.out.println(a.b.c.d);

//B.java

public class B {

public C c;
}

//C.java

public class C {

public int d;

a) Erro de compilação na classe A


b) Erro de compilação na classe B
c) Erro de compilação na classe C
Profº Alexandre EUGÊNIO da Silva Página 10
Curso Adonai QUESTÕES Disciplina Linguagem JAVA

d) Erro de execução: Variável d não iniciada


e) Saída: 0

28) Qual é o método responsável por pausar a execução de uma thread até
que outra sinalize que esta possa continuar?

a) stop()
b) pause()
c) wait()
d) yield()
e) notify()

Profº Alexandre EUGÊNIO da Silva Página 11


Curso Adonai QUESTÕES Disciplina Linguagem JAVA

GABARITO

1 a
2 a
3 a
4 e
5 c
6 e
7 d
8 c
9 e
10 c
11 a
12 c
13 d
14 e
15 e
16 c
17 b
18 e
19 c
20 b
21 c
22 e
23 e
24 c
25 b
26 d
27 e
28 c

Profº Alexandre EUGÊNIO da Silva Página 12

Você também pode gostar