EXPLICACAO SOBRE MODIFICADOR DE ACESSO
Bom dia,Colegas!
No que diz respeito ao VB.NET:
Quando crio uma classe, temos de definir o modificador de acesso.Ou seja se a classe será:
- Public
- Private
- Friend
- Protected
Public e Private, são conhecidas. No entanto tenho dúvidas sobre a Friend e a Protected.
Procurando no Google, a definição que se encontra é a de que a classe Friend é aquela que
é visivel [Ô]localmente[Ô] e a Protected não pode ser acessada,mas pode ser instânciada.Minha
dúvida é:
Algum colega, pode explicar melhor. Ou seja, mencionar situações em que se pode usar
uma classe Friend ou Protected?
No que diz respeito ao VB.NET:
Quando crio uma classe, temos de definir o modificador de acesso.Ou seja se a classe será:
- Public
- Private
- Friend
- Protected
Public e Private, são conhecidas. No entanto tenho dúvidas sobre a Friend e a Protected.
Procurando no Google, a definição que se encontra é a de que a classe Friend é aquela que
é visivel [Ô]localmente[Ô] e a Protected não pode ser acessada,mas pode ser instânciada.Minha
dúvida é:
Algum colega, pode explicar melhor. Ou seja, mencionar situações em que se pode usar
uma classe Friend ou Protected?
Os acessos Protected e Friend oferecem um nÃvel intermediário de proteção entre o acesso Public e o Private.
Os membros Protected de uma classe-base podem ser acessados apenas nessa classe-base ou em quaisquer classes derivadas dessa classe.
Já os membros Friend de uma classe-base podem ser acessados apenas por objetos declarados no mesmo componente. Observe que um membro Friend é acessÃvel em qualquer parte do componente na qual o membro Friend é declarado e não apenas nas classes derivada da classe-base que define o membro.
Ou seja, eu vou conseguir acessar o membro Protected somente onde esta classe esteja sendo herdada.
E quanto ao membro Friend, eu vou conseguir acessar sempre que houver uma instância dele.
Os membros Protected de uma classe-base podem ser acessados apenas nessa classe-base ou em quaisquer classes derivadas dessa classe.
Já os membros Friend de uma classe-base podem ser acessados apenas por objetos declarados no mesmo componente. Observe que um membro Friend é acessÃvel em qualquer parte do componente na qual o membro Friend é declarado e não apenas nas classes derivada da classe-base que define o membro.
Public Class Class1
Protected Sub TesteProtected()
MessageBox.Show([Ô]Membro Protected[Ô])
End Sub
Friend Sub TesteFriend()
MessageBox.Show([Ô]Membro Friend[Ô])
End Sub
End Class
Ou seja, eu vou conseguir acessar o membro Protected somente onde esta classe esteja sendo herdada.
Public Class Class2
Inherits Class1 [ô] Herança
Sub Teste1()
TesteProtected() [ô] Consigo chamar o método protected
End Sub
End Class
E quanto ao membro Friend, eu vou conseguir acessar sempre que houver uma instância dele.
Public Class Class2
Sub Teste2()
Dim Instancia As New Class1 [ô] Instância da Class1
Instancia.TesteFriend() [ô] Consigo chamar o método friend
End Sub
End Class
Há... boa JONATHANSTECKER Zero assina embaixo !
Abraços !
Abraços !
Tópico encerrado , respostas não são mais permitidas