Classes e módulos são tipos de referência que encapsulam os itens definidos dentro, mas eles diferem em como itens são acessados a partir de outros procedimentos.
A
principal diferença entre classes e módulos é que as classes podem ser
instanciadas como objetos enquanto os módulos padrão não podem. Como
há apenas uma cópia dos dados de um módulo padrão, quando uma parte do
seu programa altera uma variável pública em um módulo padrão, qualquer
outra parte do programa recebe o mesmo valor se ler essa variável. Em contraste, dados do objeto existem separadamente para cada objeto instanciado. Outra diferença é que, ao contrário dos módulos padrão, classes podem implementar interfaces.
Classes e módulos também usam escopos diferentes para seus membros. Membros definidos em uma classe têm escopo em uma instância específica da classe e existem apenas durante a vida útil do objeto. Para acessar membros de classe de fora de uma classe, você deve usar nomes totalmente qualificados no formato de Objeto.Membro.
Por outro lado, o membros declarados dentro de um módulo são acessíveis publicamente por padrão e podem ser acessados por qualquer código que pode acessar o módulo. Isso significa que variáveis em um módulo padrão são na realidade variáveis globais, pois estão visíveis de qualquer lugar em seu projeto, e existem durante a vida útil do programa.
Fonte: http://msdn.microsoft.com/pt-br/library/7825002w%28v=vs.90%29.aspx
Observação: |
---|
Quando o Shared modificador é aplicado a um membro da classe, é associado com a classe em si, em vez de uma instância específica da classe. O membro é acessado diretamente usando o nome da classe, da mesma maneira que membros de módulo são acessados. Para obter mais informações sobre membros compartilhados, veja Membros compartilhados no Visual Basic. |
Por outro lado, o membros declarados dentro de um módulo são acessíveis publicamente por padrão e podem ser acessados por qualquer código que pode acessar o módulo. Isso significa que variáveis em um módulo padrão são na realidade variáveis globais, pois estão visíveis de qualquer lugar em seu projeto, e existem durante a vida útil do programa.
Fonte: http://msdn.microsoft.com/pt-br/library/7825002w%28v=vs.90%29.aspx
Nenhum comentário:
Postar um comentário