"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Acesso a membros e a herança

Acesso a membros e a herança

Publicado em 2024-11-03
Navegar:442
  • No Java, variáveis de instância de uma classe são frequentemente declaradas como private para proteger o acesso e evitar adulteração.

  • A herança não invalida a restrição de acesso private.

  • Mesmo que uma subclasse herde todos os membros de sua superclasse, não poderá acessar os membros declarados como private.

  • Por exemplo, se width e height forem declaradas como private em TwoDShape, a subclasse Triangle não poderá acessá-las.

Acesso a membros e a herança

  • A classe Triangle não será compilada porque tenta acessar width e height, que são private em TwoDShape, causando uma violação de acesso.

  • Variáveis private só podem ser acessadas pelos membros da própria classe em que foram declaradas; subclasses não têm acesso a essas variáveis.

  • Embora isso possa parecer uma restrição, é possível contornar o problema usando métodos acessores.

  • Métodos acessores podem ser utilizados para fornecer acesso controlado a variáveis private.

  • A seguir, um exemplo de como modificar TwoDShape e Triangle para usar métodos acessores para width e height.

Acesso a membros e a herança

Acesso a membros e a herança

Declaração de lançamento Este artigo está reproduzido em: https://dev.to/devsjavagirls/acesso-a-membros-e-a-heranca-4pp2?1 Caso haja alguma infração, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3