O modificador protectedpermite que um membro seja acessado dentro de seu pacote e por subclasses em outros pacotes.
Um membro protegido pode ser usado por todas as subclasses, mas continua protegido contra acesso de códigos externos ao pacote.
Um exemplo pode ajudar a entender melhor o efeito de protected.
No exemplo, a classe Book é alterada para que suas variáveis de instância sejam protected.
Crie uma subclasse de Book chamada ExtBook.
Crie uma classe chamada ProtectDemo que utiliza ExtBook.
ExtBook adiciona um campo para armazenar o nome do editor.
ExtBook também possui vários métodos acessadores.
As duas classes (ExtBook e ProtectDemo) estão no pacote bookpackext.
ExtBookestende Book, o que permite acessar membros protectedde Book, mesmo estando em pacotes diferentes.
ExtBookpode acessar diretamente os membros protectedcomo title, authore pubDate, criando métodos acessadores para essas variáveis.
Na classe ProtectDemo, o acesso direto a essas variáveis é negado porque ProtectDemonão é uma subclasse de Book.
Se o comentário for removido da linha books[0].title = "test title";, o programa não será compilado devido à restrição de acesso.
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