Professional Documents
Culture Documents
1 A Certificação 4
1.1 Certificação de Programador Java 4
1.2 Prova de certificação 4
2 Declaração e controle de acesso 5
2.1 Arrays 5
2.1.1 Exemplo de Questão 6
2.2 Classes, métodos e variáveis 7
2.3 Modificadores 8
2.3.1 Considerações sobre Inner Class 10
2.3.2 Exemplo de Questão 10
2.4 Construtores 11
2.4.1 Exemplo de Questão 12
2.5 Parâmetros de Retorno 13
2.5.1 Exemplo de Questão 13
3 Controle de fluxo, assertions e tratamento de exceptions 14
3.1 Condicionais 14
3.1.1 Exemplo de Questão 15
3.2 Laços 16
3.2.1 Exemplo de Questão 17
3.3 Exceptions 18
3.3.1 Exemplo de Questão 19
3.4 Tratamento de Exceptions 20
3.4.1 Exemplo de Questão 21
3.5 Assertions 22
3.5.1 Exemplo de Questão 24
4 Garbage Collector 25
4.1 Garbage Collector 25
4.1.1 Exemplo de Questão 25
4.2 Garbage Collector 26
4.2.1 Exemplo de Questão 26
5 Fundamentos da Linguagem 27
5.1 Fundamentos da Linguagem 27
5.1.1 Exemplo de Questão 30
6 Interfaces 31
6.1.1 Exemplo de Questão 31
6.2 Método main 32
6.2.1 Exemplo de Questão 32
6.3 Palavras reservadas e palavras chave 33
6.3.1 Exemplo de Questão 33
6.4 Inicialização 34
6.4.1 Exemplo de Questão 34
1 A Certificação
Atualmente existem três versões desta certificação, com diferenças nos objetivos e conteúdo dos testes:
certificação para plataforma 1.2 (CX 310-025)
certificação para plataforma 1.4 (CX-310-035)
upgrade para plataforma 1.4
1. Deve-se adquirir um voucher com a Sun Education. Para isso deve-se entrar em contato pelo telefone:
0800-55-7863
2. Após receber-se o voucher (que normalmente é enviado pelo correio), deve-se entrar em contato com um dos
centros autorizados Prometric para marcar o teste.
O voucher dá direito a somente um teste, e normalmente tem validade de um ano. Caso não se obtenha
aprovação no teste, um novo voucher deve ser adquirido para realização de novo teste. O prazo mínimo entre a
realização de dois testes é de 2 semanas.
2.1 Arrays
Objetivos:
Escrever código que declare, construa e inicialize arrays de qualquer tipo utilizando qualquer uma das formas
permitidas para declaração e inicialização.
Teoria:
Para utilização de arrays em Java devem ser seguidos três passos:
Declaração : int[] arrayName; ou int arrayName[]
Construção: arrayName = new int[25];
Inicialização: arrayName[0] = 2 ; arrayName[1] = ...
Os três passos podem ser resumidos em uma única linha conforme exemplo abaixo:
float[ ] diameters = { 1.1f, 2.2f, 3.3f, 4.4f, 5.5f };
Quando um array é construído seus valores são inicializados para valores default conforme tabela:
Anotações
5
2 Declaração e controle de acesso
Exemplo: MyAr.java
public class MyAr {
public static void main(String argv[]) {
int[] i = new int[5];
System.out.println(i[5]);
}
}
A) An error at compile time
B) An error at run time
C) The value 0 will be output
D) The string "null" will be output
Teoria:
Existem 10 modificadores em Java, que se pode aplicar a classes, atributos de classe, métodos e construtores;
O modificador public permite acesso a TODAS as classes, sem distinção. Enquanto o modificador private não
permite acesso a nenhuma classe.
private x
default x x
protected x x x
public x x x x
Anotações
7
2 Declaração e controle de acesso
2.3 Modificadores
Modificador final
Modificador abstract
Modificador static
Este modificador se aplica a variáveis e métodos, de forma que podem ser acessados sem que seja necessário
instanciar um objeto da classe.
métodos estáticos só podem acessar variáveis e métodos estáticos de sua classe.
métodos estáticos não possuem a variável implícita this.
métodos estáticos não podem ser sobrescritos para se tornarem não estáticos e vice-versa.
Modificador synchronized
Este modificador define uma trava para o objeto, de forma que somente uma thread possa acessá-lo de cada vez.
Modificador native
Modificador transient
Modificador volatile
Este modificador estabelece que a variável estará sempre com a informação mais recente em caso de acesso de
múltiplas threads.
Anotações
9
2 Declaração e controle de acesso
Uma inner class pode ter qualquer modificador de acesso, quando declarada internamente a uma
classe, porém, quando definida internamente a um bloco (por exemplo, um método) a classe não pode
ter nenhum modificador sendo efetivamente privada daquele bloco.
Uma inner class definida dentro de um bloco não pode ser static.
Uma inner class têm livre acesso as variáveis de sua classe externa, exceto quando for static
(acesso somente a variáveis static) ou quando for interna a um método (acesso somente a
variáveis final).
Exemplo: P1.java
package MyPackage;
class P1 {
void afancymethod() {
System.out.println("What a fancy method");
}
}
Exemplo: P2.java
public class P2 extends P1 {
public method() {
afancymethod();
}
}
2.4 Construtores
Objetivos:
Para uma dada classe, determinar se um construtor default será criado e em caso afirmativo como será este
construtor.
Teoria:
Anotações
11
2 Declaração e controle de acesso
Exemplo: Base.java
class Base {
Base(int i) {
System.out.println("Base");
}
}
Identificar os valores de retorno permitidos para qualquer método dada a declaração de todos os métodos
relacionados nesta ou em superclasses.
Teoria:
Exemplo: Rid.java
public class Rid {
public void amethod(int i, String s) {
}
//Here
}
Anotações
13
3 Controle de fluxo, assertions e tratamento de exceptions
3.1 Condicionais
Objetivos:
Escrever código utilizando comandos if e switch e identificando tipos de argumento permitidos para estes
comandos.
Teoria:
Sintaxe:
if(condicao) {
bloco de codigo
}
[else] {
bloco de codigo
}
Sintaxe:
switch(parametro){
case parametroCase:
bloco de código
[break];
[default]:
bloco de código
break;
}
O parâmetro para switch() deve ser uma variável compatível com int (byte, short ,char ou int), e
cada elemento case aceita um único parâmetro, que deve ser uma constante ou expressão constante compatível
com a variável utilizada como argumento de switch().
Anotações
15