Duvida com final em metodo

4 respostas
G

Ola!
Neste metodo:

public final void metodo1{







}

Para que serve o final? O que ele faz? Qual a razao de se ter um metodo assim?

O “public” trata da visibilidade
O “void” diz que ele nao retorna nada.
E o “final”? Qual a finalidade dele?!

Alguem pode me dar uma forcinha?! :smiley:

Bjos.
Giovana

4 Respostas

ricardolecheta

quer dizer que nenhuma classe Filha desta classe poderá sobrescrever este método.

class FinalClass {
	public final void finalMethod() {
		System.out.println("final");
	}
}

public class Test extends FinalClass{

                // ERRO de compilação!
	public void finalMethod() {
	}
}
caiofilipini

Declarar um método como final é a mesma coisa que dizer:

:arrow: “Esse método não poderá sofrer override.” :smiley:

[]'s

Ironlynx

Completando o NewRadical:
No caso de variáveis, o modificador final impossiblita que a variável seja reinicializada com outro valor. Lembre-se de que no caso de objetos, a referência ao objeto que é final, não o objeto em si. Se a variável for de instância, é necessário fornecer um valor na hora de declará-la ou em todos os construtores da classe, caso contrário ocorrerá um erro de compilação. Variáveis de interface sempre são final e precisam ter seu valor declarado. (Fonte: modificadores by Bani)

Nunca é demais lembrar que variáveis locais declaradas como final ainda permitem q o compilador faça cast implicitamente no caso de seu tipo de retorno ser diferente do declarado na variável.(tipos relacionados claro)
exemplo:variável local declarada como final int e tipo de retorno do método é um float,o mesmo serve para char-byte,int-char,int-double…
Em todos os casos o Cast implícito será feito!

Mais sobre modificadores aqui:
http://vanessas.sites.uol.com.br/java/modificadores.htm

N

final

:arrow: Uma classe final não pode ser herdada.
:arrow: Um atributo final não pode ter o seu valor alterado. É uma contante.
:arrow: Um método não pode ser sobrescrito.

Criado 9 de novembro de 2003
Ultima resposta 9 de nov. de 2003
Respostas 4
Participantes 5