Java B sicoáJava B sicoá
Modificadores de AcessoModificadores de Acesso
Prof. Wesley R. Bezerra
Roteiro
• Escopos de acesso
• Modificadores que implicam no uso
• Modificadores relacionados a threads
• Outros modificadores
Objetivo
• Conhecer os
modificadores de acesso
existentes na linguagem
Java, possibilitando assim,
ter acesso a um código
com mais recursos.
Escopos de acesso
• Modificadores que alteram as permissões de acesso
entre os elementos das classes e objetos.
Public
Private
Protected
Friend
Public
• Permite que qualquer classe tenha acesso ao atributo
ou método declarado sob este escopo.
Private
• Restringe o acesso a somente a classe onde o
atributo ou método ou declarado, sendo que nem as
subclasses desta classe terão acesso a estes.
Protected
• Restringe o acesso aos atributos/métodos somente a
classe onde esta estes estão declarados e as classes
filhas(subclasses).
Friend
• Permite o acesso aos atributos/métodos por todas as
classes no mesmo pacote. Este tipo de acesso
acontece quando não especificamos qual o
modificador de acesso.
Modificadores que
implicam no uso
• Modificadores que implicam no uso dos elementos
de uma classe ou na herança.
Abstract
Static
Final
• Este modificador de acesso é aplicado a métodos e
classes. Quando aplicado a um método, indica que
este método deverá ser implementado futuramente,
no momento da instanciação ou por uma subclasse.
• Uma classe que tenha um método abstrato deve ser
declarada como uma classe abstrata.
• Classes abstratas não podem ser instanciadas
diretamente, sendo que para instanciá-las devemos
implementar no momento da instanciação o método
abstrato.É mais comum utilizarmos as subclasses
para instanciarmos objetos de classes abstratas.
Static
• Um método ou atributo declarado como static é
chamado também de método/atributo da classe
devido ao fato de não precisarmos instanciar um
objeto para usarmos estes métodos/atributos, os
utilizamos diretamente na classe.
• No entanto devemos ter alguns cuidados quando
implementarmos métodos abstratos, como estamos
definindo um método como abstrato ele só poderá
ter acesso a variáveis locais, parâmetros e atributos
estáticos.
Final
• Este modificador caracteriza que o que esta sob sua
sombra não pode ser mudado. Pode ser aplicado
para classes, atributos e métodos. Para classes indica
que uma classe não poderá ser herdada, para
atributos indica que o valor deste não mudará e para
métodos indica que o métodos declarado como final
não poderá ser sobrescrito.
Modificadores
relacionados a threads
• Modificadores utilizados em thread para evitar erros
pelo processamento paralelo ou ainda compartilhar
atributos entre as varias threads.
Volatile
Synchronized
Volatile
• Indica que um valor de uma variável será alterado
simultaneamente pelas varias linhas de execuções
(Thread) que estiverem rodando.
Synchronized
• Indica que a utilização de um métodos, ou a
execução de um bloco, se dará de maneira síncrona
pelas varias threads que estão ativas, sendo assim,
somente uma thread pode executar por vez esta
parte do código.
Outros modificadores
• Outros modificadores que não estão agrupados.
native
transient
Native
• Indica que um método é nativo, ou seja, não faz parte
de sua aplicação ou de qualquer biblioteca que sua
aplicação incorpora, fazendo parte então do sistema
operacional ou qualquer biblioteca instalada nele.
• Esta é a palavra chave que utilizamos quando
queremos incorporar dlls, por exemplo, ao nosso
programa.
Transient
• Indica que um atributo não sera serializada quando
nosso código mandar serializar o objeto que a
contem. Dizemos que o valor desta variável é
transitório, ou seja, não é necessário guardá-lo
Conclus oã
• Os modificadores de acesso nos permite ter um
maior poder sobre o código gerado, através de
palavras-chave que passamos para o compilador,
aumentando assim as capacidades de nosso
programa através destes recursos.
ObrigadoObrigado
Duvidas e sugestões
wesleybez@yahoo.com.br

Java Básico :: Modificadores de acesso

  • 1.
    Java B sicoáJavaB sicoá Modificadores de AcessoModificadores de Acesso Prof. Wesley R. Bezerra
  • 2.
    Roteiro • Escopos deacesso • Modificadores que implicam no uso • Modificadores relacionados a threads • Outros modificadores
  • 3.
    Objetivo • Conhecer os modificadoresde acesso existentes na linguagem Java, possibilitando assim, ter acesso a um código com mais recursos.
  • 4.
    Escopos de acesso •Modificadores que alteram as permissões de acesso entre os elementos das classes e objetos. Public Private Protected Friend
  • 5.
    Public • Permite quequalquer classe tenha acesso ao atributo ou método declarado sob este escopo.
  • 6.
    Private • Restringe oacesso a somente a classe onde o atributo ou método ou declarado, sendo que nem as subclasses desta classe terão acesso a estes.
  • 7.
    Protected • Restringe oacesso aos atributos/métodos somente a classe onde esta estes estão declarados e as classes filhas(subclasses).
  • 8.
    Friend • Permite oacesso aos atributos/métodos por todas as classes no mesmo pacote. Este tipo de acesso acontece quando não especificamos qual o modificador de acesso.
  • 9.
    Modificadores que implicam nouso • Modificadores que implicam no uso dos elementos de uma classe ou na herança. Abstract Static Final
  • 10.
    • Este modificadorde acesso é aplicado a métodos e classes. Quando aplicado a um método, indica que este método deverá ser implementado futuramente, no momento da instanciação ou por uma subclasse. • Uma classe que tenha um método abstrato deve ser declarada como uma classe abstrata.
  • 11.
    • Classes abstratasnão podem ser instanciadas diretamente, sendo que para instanciá-las devemos implementar no momento da instanciação o método abstrato.É mais comum utilizarmos as subclasses para instanciarmos objetos de classes abstratas.
  • 12.
    Static • Um métodoou atributo declarado como static é chamado também de método/atributo da classe devido ao fato de não precisarmos instanciar um objeto para usarmos estes métodos/atributos, os utilizamos diretamente na classe.
  • 13.
    • No entantodevemos ter alguns cuidados quando implementarmos métodos abstratos, como estamos definindo um método como abstrato ele só poderá ter acesso a variáveis locais, parâmetros e atributos estáticos.
  • 14.
    Final • Este modificadorcaracteriza que o que esta sob sua sombra não pode ser mudado. Pode ser aplicado para classes, atributos e métodos. Para classes indica que uma classe não poderá ser herdada, para atributos indica que o valor deste não mudará e para métodos indica que o métodos declarado como final não poderá ser sobrescrito.
  • 15.
    Modificadores relacionados a threads •Modificadores utilizados em thread para evitar erros pelo processamento paralelo ou ainda compartilhar atributos entre as varias threads. Volatile Synchronized
  • 16.
    Volatile • Indica queum valor de uma variável será alterado simultaneamente pelas varias linhas de execuções (Thread) que estiverem rodando.
  • 17.
    Synchronized • Indica quea utilização de um métodos, ou a execução de um bloco, se dará de maneira síncrona pelas varias threads que estão ativas, sendo assim, somente uma thread pode executar por vez esta parte do código.
  • 18.
    Outros modificadores • Outrosmodificadores que não estão agrupados. native transient
  • 19.
    Native • Indica queum método é nativo, ou seja, não faz parte de sua aplicação ou de qualquer biblioteca que sua aplicação incorpora, fazendo parte então do sistema operacional ou qualquer biblioteca instalada nele. • Esta é a palavra chave que utilizamos quando queremos incorporar dlls, por exemplo, ao nosso programa.
  • 20.
    Transient • Indica queum atributo não sera serializada quando nosso código mandar serializar o objeto que a contem. Dizemos que o valor desta variável é transitório, ou seja, não é necessário guardá-lo
  • 21.
    Conclus oã • Osmodificadores de acesso nos permite ter um maior poder sobre o código gerado, através de palavras-chave que passamos para o compilador, aumentando assim as capacidades de nosso programa através destes recursos.
  • 22.