Quando usar final?

2 respostas
xxmayconxx

Li que devemos usar o classes final para garantir que não hajam subclasses de uma superclasse onde seus métodos são suficientes para serem usados em qualquer contexto da aplicação, mas nesse caso não deveriamos marcar tudo que não será herdado no sistema como final?Quando devo usar o final?

2 Respostas

nel

Podemos dizer que algo marcado como final é “imutável” no contexto em que o mesmo está inserido. Se uma classe é final, significa que ninguém vai conseguir estende-la, logo, sobrescrever qualquer um de seus respectivos métodos. Um exemplo disso é a classe String, por n motivos.

Quando usar ? Isso é você quem deve decidir. Se você não quer classes filhas de uma classe sua, marque-a como final. Se não quer que alguém altere o valor de uma constante (é obrigatório usar final em constante, senão, qualquer um pode alterar seu valor, logo, deixa de ser constante), de uma variável de um método ou algo do gênero. Isso tudo vai depender da sua necessidade.

É igual perguntar, “Quando devemos estender uma classe?” Quando precisar sobrescrever um método é uma boa resposta, por exemplo.

J

Final e usado quando acaba a hierarquia de heranca. Na ultima classe. Aquele na qual ninguem mais pode herda-la.
Alem de ser usada em variaveis para declara-las como “imutaveis”.

Criado 19 de abril de 2013
Ultima resposta 19 de abr. de 2013
Respostas 2
Participantes 3