Java puro Flashcards

1
Q

Quais são os modificadores de acesso do java?

A

Public, protected, private, default

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Como é o fluxo depois de rodar uma aplicação Java?

A

Código java é compilado para bytecodes pelo compilador, o JRE cria uma máquina virtual JVM para rodar o código em bytecodes e a aplicação começa a funcionar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é Java JRE? Qual sua função?

A

Java Runtime Environment.

Fornecer a JVM e outras bibliotecas essenciais.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

O que é Java JVM? Qual sua função?

A

Java Virtual Machine.

Rodar código bytecodes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

O que é Java JIT?

A

Compilador Just-In-Time, que vem ativado por padrão, e compila o código para bytecodes durante a execução do programa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

O que é hotspot no contexto de Java?

A

É a técnica de otimizar a compilação dos códigos mais acessados, em conjunto com o JIT.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

O código gerado pela compilação do Java contem instrução em linguagem de ___________?

A

Linguagem intermediária.
Não é linguagem de máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quais são as fases de uma aplicação Java?

A

Edição, compilação, carregamento, verificação e execução.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

O que é a fase de edição de uma aplicação Java?

A

Codar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

O que é a fase de compilação de uma aplicação Java?

A

Transformar .java em .class

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

O que é a fase de carregamento de uma aplicação Java?

A

Introduzir os códigos bytecodes na memória.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que é a fase de verificação de uma aplicação Java?

A

Verifica se os bytecodes são válidos e não violam regras.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

O que é a fase de execução de uma aplicação Java?

A

A JVM lê e interpreta os bytecodes para uma linguagem de máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

O que é Java Stack Memory?

A

Área da memória utilizada para armazenar variáveis locais e a execução de métodos. O erro mais conhecido dela é StackOverflow

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

O que é Java Heap Space?

A

A heap space é usada para armazenar objetos (instâncias de classes) e as referências a esses objetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Como interceptar uma chamada do GC ao liberar uma classe?

A

Sobreescrevendo o método finalize() dentro de uma classe.

17
Q

Como chamar o GC de forma manual?

A

Utilizando o método gc() você solicita que a JVM execute uma limpeza, mas não tem garantia de nada, nem de quando será executado.

18
Q

Como comentar código no Java?

19
Q

Quais são os tipos tipos primitivos do Java?

A

Inteiro: byte, int, long, short, char
Flutuante: float, double
Booleano: boolean

20
Q

Qual a saída do código a seguir?

System.out.println(“1+1+1=”+1+1+’1’);

A

1+1+1=111

Inteiros concatenados com string viram string.

21
Q

Utilizado para verificar se um objeto é uma instância de uma classe

A

meuAnimal instanceof Cachorro

Também verifica herança .

22
Q

Quais são os operadores de bit do Java e o que fazem?

A

complemento = ~
and bit a bit = &
or bit a bit = |
XOR = ^
shift à esquerda = «
shift à direita =&raquo_space;
shift à direita sem sinal =&raquo_space;>

23
Q

Que número é esse em hexadecimal?
0xffff9c

A

Encontrar o valor das quadras.
1111 1111 1111 1111 1001 1100
Multiplicar o valor de cada quadra por 16 elevado à posição da quadra.
OBS: começamos do elevado a 0, da direita para a esquerda.

24
Q

Pra que serve o modificador de acesso package-private?

A

É o modificador padrão de acesso em Java quando nenhum modificador específico é declarado.

Os membros package-private são visíveis para todas as classes que pertencem ao mesmo pacote, mas não podem ser acessados de classes que estão em pacotes diferentes.

25
Quais são os outros tipos de modificadores não relacionados a acesso?
static: Pertence à classe, não à instância. final: Imutável, não pode ser sobrescrito ou estendido. abstract: Classe ou método abstrato, deve ser implementado. synchronized: Método ou bloco seguro para múltiplas threads. volatile: Variável visível por todas as threads, sem cache. transient: Impede a serialização de um campo. native: Método implementado em outra linguagem. strictfp: Garantia de precisão consistente para ponto flutuante. interface: Declaração de uma interface. default: Implementação padrão em interfaces.
26
Pra que servem as palavras final, sealed e permits no java?
final: Em variáveis: A variável não pode ser alterada após ser inicializada. Em métodos: O método não pode ser sobrescrito em subclasses. Em classes: A classe não pode ser estendida. sealed: Restringe quais classes podem estender a classe marcada como sealed. Funciona em conjunto com permits para definir quais subclasses são permitidas. permits: Usado em classes sealed para listar as classes que podem herdar dela.
27
Quais são os tipos de polimorfismo?
Polimorfismo por Inclusão: Métodos sobrescritos em subclasses. Polimorfismo por Sobrecarga: Vários métodos com o mesmo nome, mas diferentes parâmetros. Polimorfismo Paramétrico: Uso de generics para permitir que métodos e classes operem com diferentes tipos. Polimorfismo Ad-hoc: Métodos sobrecarregados que realizam operações semelhantes em diferentes tipos de dados.