Pra quer serve o final de um método?

10 respostas
A

olá, veja:

final double soma (int a, int b){ return a + b; }

o que o modificador final está fazendo… ???

10 Respostas

walissongpi
andredecotia:
olá, veja:
final double soma (int a, int b){
	return a + b;
}

o que o modificador final está fazendo... ???


não pode ser sobrescrito, ou seja, outra classe que herda desta classe que contém o método não poderá fazer a sobrescrição.

ex:

public class ClasseMae {
    final void fazIsto(){
        System.out.println("faz nada");
    }
}

class ClasseFilha extends ClasseMae{
    
    void fazIsto(){ // NÃO PERMITIDO  - ERRADO
        System.out.println("faz isso");
    }
}
lucas_carvalho100

Olá André ele soma as duas variaveis e retorna o valor somado, certo?

Abraços

lucas_carvalho100

Opa cara cumi bola aqui, achei q vc estava falando do retorno… tsrrrs

O final quer dizer que voce nao pode sobrescrever o método mais… blz…

Abraços

edmarr

lucas_carvalho100:
Opa cara cumi bola aqui, achei q vc estava falando do retorno… tsrrrs

O final quer dizer que voce nao pode sobrescrever o método mais… blz…

Abraços


Caro colega , não e so metodo nao pode ser classe, hum grande exemplo são classes Wrapper , ou uma mais conhecida ainda ,
tente estender a classe String por exemplo para você ver o que acontece =´) .

lucas_carvalho100

edmarr:
lucas_carvalho100:
Opa cara cumi bola aqui, achei q vc estava falando do retorno… tsrrrs

O final quer dizer que voce nao pode sobrescrever o método mais… blz…

Abraços


Caro colega , não e so metodo nao pode ser classe, hum grande exemplo são classes Wrapper , ou uma mais conhecida ainda ,
tente estender a classe String por exemplo para você ver o que acontece =´) .

Sim é verdade, mas no caso lá, ele estava perguntando sobre o método, mas concordo com vc tb, vlw pelo toque abraço…

A

como assim sobrescrever? o que é sobrescrever exatamente por favor? eu pensava que fosse quando eu implentava um método abstrado…

peczenyj
class A {
  public void doIt(){ System.out.println("oi, sou a classe A"); }
} 
class B extends A{
  @Override  // tcha!
  public void doIt(){ System.out.println("oi, sou a classe B e sobreescrevi o metodo doIt()"); }
}
lucas_carvalho100

Olá,o nosso amigo acima deu um ótimo exemplo, mas para você conhecer melhor sobre orientação a objeto, eu indico esse site aqui http://downloads.caelum.com.br/apostila/caelum-java-objetos-fj11.pdf acredito que vai te esclarecer muito sobre suas duvidas, inclusive sobre sobrescrita de métodos, ok?

Abraços…

aajjbb

exato, com o final nao pode haver mais sobreescrita de metodo. ja sobre a sobreescrita, o amigo aqui em cima ja deu um bom exemplo.

c354r

Uma variável ser final significa que não pode alterar o seu valor.
Um método ser final significa que você não pode sobrepô-lo.
Uma classe ser final significa que você não pode estendê-la, ou seja: não pode criar uma subclasse(classe filha) dela.

Criado 31 de maio de 2010
Ultima resposta 1 de jun. de 2010
Respostas 10
Participantes 7