[size=12][color=blue]Suponhamos que em desenvolvimento de um software qualquer eu tenha um pacote conexão.
e nesse pacote eu tenha uma classe com o mesmo nome (Conexao) e nessa os atributos estarão com o modificador de acesso private e os getters and setters com protected para que apenas as classes desse pacote possam usar tais métodos.
Essa forma de pensar e a própria implementação estaria correta?[/color][/size]
Modificadores de acesso [RESOLVIDO]
7 Respostas
protect ou default voce quis dizer? normalmente limitamos acesso às variaveis com private e deixamos getters e setters default ou públicos de preferencia
geralmente os nomes de pacotes não são iguais àos nomes das classes. mas se for um projeto didático, muito pequeno ou pra uso próprio, não vejo porque estar errado. voce é o desenvolvedor e esse classe conexão é propriedade sua né.
[size=12][color=blue]Suponhamos que em desenvolvimento de um software qualquer eu tenha um pacote conexão.
e nesse pacote eu tenha uma classe com o mesmo nome (Conexao) e nessa os atributos estarão com o modificador de acesso private e os getters and setters com protected para que apenas as classes desse pacote possam usar tais métodos.
Essa forma de pensar e a própria implementação estaria correta?[/color][/size]
Se essa for a necessidade do seu códgio, não tem porque a implementação estar incorreta. Essa classe só iria ter utilidade para outras classes dentro deste mesmo pacote ou para as classes que herdarem dela (estas também terão acesso aos métodos protegidos).
[color=blue]A ideia era não acessar diretamente os atributos e limitar o acesso apenas para as classes do pacote. Tendo em vista que nenhuma classe externa ao pacote teria herança da classe Conexao.[/color]
Limitar o acesso externo até mesmo aos métodos da classe? Se for isso, tá certinho.
Isso mesmo, Obrigado =)
Se você quer garantir mesmo, use default ao invés de protected. Com default, mesmo que uma classe externa herde daquela pacote, ela não verá os métodos.
Além disso, você pode deixar classes inteiras como default, assim, outros pacotes sequer a verão.
Bem, então isso é o mais adequado para o que eu gostaria de fazer.
Obrigado a todos pelas colaborações.