Estudo para certificação – Capítulo 01

Esse é a primeira parte de uma série de posts que irei fazer.
Nesses posts, vou colocando um resumo ou talvez até mesmo trechos na íntegra do livro: Certificação Sun para Programador Java 6 da Kathy Sierra e Bert Bates.

Sei que hoje a certificação está voltada para a versão Java 8, mas do mesmo modo, grande parte dos conceitos da linguagem Java, continua a mesma.
Eu havia feito esses resumos há algum tempo, porém, não havia recebido o retorno da Editora para disponibilizar em meu blog. Após ter recebido, editei os mesmos e acabei deixando-os de publicar, dando preferência para temas relacionados a Android.
Volto agora para publicas todos esses resumos e espero que possa ajudar muitos devs iniciantes que queiram ver alguns detalhes da linguagem, bem como os devs que estão a mais tempo na área, e que acabam esquecendo um ou outro conceito. Do modo geral, aproveitem! =D

Obs: Caro leitor, você não deve ter como base para uma certificação Java, apenas a leituras desses meus resumos em meu blog. É de suma importância a leitura por completo do livro, bem como a realização de alguns simulados.

Capítulo 1 – Declarações e Controles de Acesso

1) Identificadores
– Os métodos JavaBeans devem ser nomeados usando-se camelCase e, dependendo do propósito do método, devem começar com set, get, is, add ou remove.

2) Regras de Declaração
– Um arquivo de código-fonte só pode ter uma classe pública.
– O arquvivo só pode ter uma instrução package, porém, várias de import.
– O arquivo pode ter mais de uma classe não pública.

3) Modificadores de Acesso a Classe
– Há três modificadores de acesso: public, protected e private.
– Há quatro níveis de acesso: public, protected, default e private.
– As classes só podem ter acesso public ou default.

4) Modificadores de Classe(não referentes a acesso)
– Uma classe não pode ser final e abstract.
– Uma classe final não pode ter subclasse.
– Uma classe abstract não pode ser instanciada.
– Uma classe com somente um método abstract significa que a classe inteira deve ser abstract.
– A primeira classe concreta a estender uma classe abstract terá que implementar todos os métodos abstracts.

5) Implementação de Interfaces
– As interfaces são contratos que definem o que a classe poderá fazer, mas não dizem nada sobre a maneira pela qual ela deverá fazê-lo.
– Uma interface só pode ter métodos abstracts.
– Os métodos das interfaces são, por padrão, public e abstract.
– As interfaces podem ter constantes, que são sempre public, static e final.
– A classe só pode estender uma classe, porém, pode implementar várias interfaces.
– As interfaces podem estender uma ou mais interfaces.

6) Modificadores de Acesso a Membros
– this sempre referenciará o objeto que estiver sendo executado no momento.
– Os membros private só podem ser acessados por um código da mesma classe.
– Os membros private não podem ser herdados.
– Os membros default só podem ser acessados por outras classes do mesmo pacote.
– Os membros protected podem ser acessados por outras classes do mesmo pacote, além de subclasses, independente do pacote.

7) Variáveis Locais
– Não podem ter modificadores de acesso.
– final é o único modificador disponível para variáveis locais.
– Devem ser inicializadas antes do uso.

8) Outros Modificadores – Membros
– Os métodos final não podem ser substituídos em uma subclasse.
– Os métodos abstract terminam com ponto-e-vírgula.
– O modificador synchronized só é aplicado a métodos e a blocos de código.
– O modificador native só é aplicado a métodos.
– O modificador strictfp só é aplicado a classes e métodos.

9) Métodos com var-args
– Aceita zero a vários argumentos.
– Só pode haver um parâmetro var-arg por método.
– O parâmetro var-arg deve vir por último na assinatura de um método.

10) Declarações de Variáveis
– As variáveis de instância não podem ser declaradas com abstract, synchronized, native ou strictfp.
– As variáveis final não podem ser reinicializadas, uma vez que tiverem um valor atribuído.
– As variáveis final devem ser inicializadas antes que a execução do construtor seja concluída.
– Os modificadores transient e volatile só podem ser aplicados a variáveis de instância.

11) Declarações de Arrays
– É sempre um objeto.
– Um array de objetos pode conter qualquer objeto que passe no teste de IS-A(É UM).

12) Variáveis e Métodos Estáticos
– Existe apenas uma cópia de uma variável e/ou classe estática, que é compartilhada por todas as instâncias.
– Métodos static não têm acesso direto a métodos não estáticos.

13) Enums
– Pode ser declarado fora ou dentro de uma classe, mas não é um método.
– Especifica uma lista de valores constantes.
– Podem conter construtores, métodos, variáveis e corpo de classes constantes.

Principal referência:

SIERRA, Kathy; BATES, Bert. Certificação Sun para Programador Java 6 – Guia de estudo – SCJP EXAME 310-065. Rio de Janeiro: Alta Books Editora, 2011.

Não deixem de verificar os próximos capítulos.
Valeu pessoal!

Anúncios

Obrigado pelo comentário.

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s