Você está na página 1de 1

Pontifcia Universidade Catlica de Gois

Departamento de Computao Anlise e Desenvolvimento de Sistemas Algortimos e Estrutura de Dados II

Modificadores de Classe
Modificadores de acesso a Classes
Acesso default
No possui nenhum modificador precedendo sua declarao. O acesso default um acesso em nvel de pacote, porque uma classe com acesso default s pode ser vista por classes de dentro do mesmo pacote. Este acesso possibilita a todas as Classes, de todos os pacotes, acesso Classe public. Caso deseje utilizar alguma Classe public que no esteja no pacote, necessrio utilizar o import. Significa que a Classe em questo no pode ser subclassificada. Utilizado quando precisar de uma garantia absoluta de que nenhum dos mtodos dessa Classe seja substitudo. Tambm significa que a respectiva Classe nunca ser aprimorada, ou mesmo modificada para uso mais especfico. No pode ser instanciada nunca. O seu nico propsito ser estendida.

Acesso public

Modificadores de Classe no referentes a acesso


Classes final

Classes abstract

Modificadores de Acesso de Membros


Membros public
Quando um mtodo ou um atributo declarado como public, significa que todas as outras Classes, independente do pacote ao qual pertenam, podem acessar o membro em questo (assumindo-se que a prpria Classe esteja visvel) Membros marcados como private no podem ser acessados por cdigo em nenhuma outra Classe que no aquela na qual o membro private foi declarado. So quase idnticos, mas com uma diferena fundamental. Um membro default s pode ser acessado se a Classe que o estiver acessando pertencer ao mesmo pacote, enquanto que um membro protect pode ser acessado (atravs de Herana) por uma Subclasse mesmo se a Subclasse estiver em um pacote diferente.

Membros private Membros protect e default

Determinando o Acesso a Membros de Classes


Visibilidade
A partir da mesma Classe A partir de qualquer Classe do mesmo pacote A partir de uma Subclasse do mesmo pacote A partir de uma Subclasse de fora do mesmo pacote A partir de qualquer Classe que no seja uma Subclasse e esteja fora do pacote

public
sim sim sim sim sim

protect
sim sim sim sim, atravs da herana no

default
sim sim sim no no

private
sim no no no no

Modificadores no referentes a acesso


Mtodos final
A palavra final impede que um mtodo possa ser substitudo em uma Subclasse, e frequentemente usada para forar os recursos API de um mtodo. Essa restrio quanto substituio propicia boa segurana, mas voc deve us-la com muito cuidado. Impedir que uma Subclasse substitua um mtodo invalida muitos dos benefcios da orientao a objetos, incluindo a estensibilidade atravs do polimorfismo. Argumentos de mtodos so as declaraes de variveis que aparecem entre parnteses na declarao de um mtodo. Argumentos de mtodos so essencialmente o mesmo que variveis locais. Sendo declarados como final, significa que ele no poder ser modificado dentro do mtodo. Isto , atribuir um novo valor ao mesmo. Mtodo que foi declarado (como abstract) mas no implementado. Isto o mtodo no contm nenhum cdigo funcional.

Argumentos final

Mtodos abstract

Você também pode gostar