Sobreescrever o metodo

como sobreescrever o metodo criaConta? Gostaria de acrescentar novos dados(como limite).
desde já agradeço

public void criaConta(){ System.out.println("Digite o nome: "); setNome(nome); System.out.println("Digite o nº da conta: "); setNumConta(numConta); System.out.println("Digite o saldo: "); setSaldo(saldo);

Oi,

Neste caso você não precisa sobrescrever nada já que não terá uma nova classe filha dessa que tá criando, mas pode sim criar vários metodos com a mesma assinatura, basta que mude justamente os parâmetros para que o compilador entendar qual metodo está sendo chamado, exemplo:

[code]class H {

public void criaConta(){
System.out.println("Digite o nome: ");
System.out.println("Digite o nº da conta: ");
System.out.println("Digite o saldo: ");
}
public void criaConta(String nome){
System.out.println("Digite o nome: ");
System.out.println("Digite o nº da conta: ");
System.out.println("Digite o saldo: ");
}
}[/code]

tenho dois metodos chamados criaConta, mas cada um deles tem parâmetros diferentes, ou melhor, um tem e outro não tem.

no caso ele terá que ser escrito numa outra classe
e a classe por sinal é filha dessa classe Conta(que possui o método criaconta )
Eu tenho que acrescentar a inclusão da variavel limite
obrigado.

nesse caso, reescreva ele utilizando a keyword super ou seja você irá chamar a implementação do método da pai + oq você quiser.

Ex

[code]class J extends H {

private int limite;
public void criaConta(){
super.criaConta();
System.out.println("Digite o Limite: ");
}

}
//impl métodos limite[/code]

era mais ou menos isso que você queria?

[quote=fernandomoncao]no caso ele terá que ser escrito numa outra classe
e a classe por sinal é filha dessa classe Conta(que possui o método criaconta )
Eu tenho que acrescentar a inclusão da variavel limite
obrigado.[/quote]

é só criar nessa nova classe um método com a mesma assinatura, porém com o novo parâmetro que você quer, não tem problemas já que você não colocou final em seu método, isso sim iria impedir a sobrescrita dele. Exemplo:

[code]class H {

public void criaConta(){
System.out.println("Digite o nome: ");
System.out.println("Digite o nº da conta: ");
System.out.println("Digite o saldo: ");
}
}
[/code]

[code]class H2 extends H {

public void criaConta(String nome, String teste){
System.out.println("Digite o nome: ");
System.out.println("Digite o nº da conta: ");
System.out.println("Digite o saldo: ");
}
}[/code]

[quote=rafaelglauber]
é só criar nessa nova classe um método com a mesma assinatura, porém com o novo parâmetro que você quer, não tem problemas já que você não colocou final em seu método, isso sim iria impedir a sobrescrita dele. [/quote]

Você não acha mais fácil ele utilizar o super, já que a classe filha fará o mesmo que a mãe só que mais um pouco, pois ai ele economizaria de ter que reescrever códigos e códigos.

abraco

[quote=shoko]Você não acha mais fácil ele utilizar o super, já que a classe filha fará o mesmo que a mãe só que mais um pouco, pois ai ele economizaria de ter que reescrever códigos e códigos.
[/quote]

Ele não disse que iria aproveitar nada…usar o super ou não depende do que ele quer fazer exatamente.

:smiley:

exatamente isso shoko
pensei que seria mais facil sobreescrever o metodo acrescentando algo a mais
mas não soube como fazer