Escopo padrão em java
Video: Curso de Java 60: Escopo de Variáveis
Conteúdo
Como seus aplicativos Java se tornam mais complexos, a necessidade de considerar âmbito torna-se cada vez mais importante. A principal razão é que você pode inadvertidamente introduzir um bug em seu aplicativo por não observar regras de escopo.
Isto pode resultar de um campo ou outro membro a ser utilizado de forma incorrecta pela aplicação (tais como a adição de um valor de dados incorrecto ou aceder a um método no momento errado ou com dados incorrecto). Além disso, o escopo incorreta pode deixar a porta aberta para pessoas de fora para interagir com o aplicativo de maneiras imprevistas (como um vírus).
O escopo padrão ocorre quando você não especificamente atribuir um escopo para um elemento de classe. Porque muitos desenvolvedores Java não tem idéia de qual é o escopo padrão é para alguns elementos (e usando um escopo padrão significa que seu código não está documentado), ele não é usado com muita freqüência.
Video: Curso Java Completo - Aula 172: Padrões de projeto pt 01: Padrão Builder
Mesmo assim, você precisa saber o que o escopo padrão é para vários elementos porque alguns desenvolvedores Java não contar com ele. No entanto, antes que você possa compreender o alcance padrão, você precisa considerar visibilidade - a medida de que elementos do aplicativo pode ver um membro. Java fornece os seguintes níveis de visibilidade (na ordem geral de encapsulação):
Pacote: O recipiente utilizado para armazenar um número de classes. Ao trabalhar com uma estrutura de diretório simples, como os exemplos deste livro faz, o pacote é um diretório que contém um número de arquivos .class.
Classe: Uma classe normalmente reside em um único arquivo .java que você compilar em um arquivo .class. Ele contém uma única declaração de classe.
Método: Um elemento pode residir na classe ou como parte de um método. O método age como um recipiente para segurar o elemento.
Quadra: Um elemento pode residir dentro de um bloco de código, tal como um loop.
Video: 13 Certificação Java (Valor padrão de uma variável)
Âmbito depende em parte do local utilizado para declarar um elemento. Por exemplo, uma variável que está definida dentro de um bloco (tal como um loop) é visível apenas dentro desse bloco. Ao tentar usar a variável fora do bloco, Java exibe uma exceção. Levando em conta a visibilidade, esta tabela descreve os vários níveis de escopo dentro do ambiente Java.
Visibilidade | privado | (padrão) | protegido | público |
---|---|---|---|---|
Acessível a partir da classe | X | X | X | X |
Acessível a partir do pacote | X | X | X | |
Acessível a partir de qualquer classe criança | X | X | ||
acessível em qualquer lugar | X |
A tabela mostra como o escopo padrão se encaixa no esquema das coisas. Por exemplo, se você declarar um método utilizando o escopo padrão, qualquer método pode usá-lo contanto que reside no mesmo pacote. Além disso, se você criar uma classe que herda da classe que contém o método, a subclasse pode usar o método contanto que reside no mesmo pacote.
Video: Implementando o padrão Facade em Java
No entanto, se a subclasse existe fora do pacote atual, não pode usar o método. Em suma, o escopo padrão é um pouco mais restritivo do que o escopo protegido, mas menos restritiva do que o âmbito privado.