2
respostas

Argumento do metodo com o nome da Classe

Tenho uma dúvida em relação ao argumento do metodo: Supondo que eu tenha a seguinte classe:

class ContaCorrente

public void deposita(double valor)
//codigo deposita
public void saca(double valor)
//codigo saca
public void transfere(double valor, ContaCorrente conta){
        this.saca(valor)
    conta2.deposita(valor)
}

Dúvida: instanciei um objeto conta1 e outro conta2, e quero fazer uma transferencia, no momento o meu metodo transferencia recebe dois argumentos valor e conta. Só que ContaCorrente conta, esta dentro da propria classe que o declara, neste caso não estaria gerando algo recursivo? Como que o C# aponta para si mesmo.?

2 respostas

Oi Leandro, o que você recebe como argumento é um objeto daquela classe... Lembra que a classe é a definição de como será todos os seus objetos... você cria a classe e sai instanciando os objetos... Você pode receber eles onde você quiser.

Então Alberto, eu sei que funciona, mas conceitualmente falando, você esta dizendo que uma classe pode ser usado chamando a si mesmo? Então vamos lá... Classs A{public void b( A {public void b A{public void b A{public void b A{public void b A{public void b A{public void b variavel){}}... etc percebe o que estou perguntando... Como a classe pode ser usada antes mesmo dela existir por completo?