Buscar

O retorno faz parte da assinatura de um método?

Alguém sabe o que o Robert Sebesta diz sobre isso?

 

 

💡 3 Respostas

User badge image

Welliton Fernandes Leal

Bom, a assinatura de um método é composta pelo Nome, Quantidade, Tipo e Ordem dos parametros.

Você não poderá ter dois métodos com o mesmo retorno, parametros e tipos iguais, mas poderá ter métodos com o mesmo nome caso o número de parametros seja diferente ou caso o tipo dos parametros seja diferente entre eles.

0
Dislike0
User badge image

William Sousa

Bom, este é um tema muito polemico. Pois existem autores que dizem que o retorno faz parte da assinatura, e outros dizem o contrário. Isto é, é uma algo complicado de se falar.

Até por que se existir um método que o tipo seja double, ele poderá retornar outro tipo (ex: int). Pela minha análise, isso passa a interpretação de que o retorno não faz parte da assinatura do método, pois caso fosse ele deveria retornar somente double. (tudo isso ao meu ponto de vista).

0
Dislike0
User badge image

RD Resoluções

Segundo Robert Sabesta, a assinatura é o jeito de identificar um método de forma única. Em linguagens onde vários métodos podem ter o mesmo nome, você precisa ter uma outra forma de evitar a ambiguidade. O compilador precisa saber qual dos métodos com mesmo nome você está chamando. Então você precisa se valer de informações extras disponíveis no método para tomar uma decisão. O mais comum é analisar os parâmetros. Se todos os parâmetros forem iguais, você tem o mesmo método, se apenas um desses parâmetros for diferente, você tem um método diferente. É possível que o retorno e outras informações possam ser analisadas também, mas isto não é comum já que podem trazer alguns problemas. Por igual entenda que a ordem também é importante.

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais