Originariamente inviato da arasino
prova a creare una classe con quei metodi
codice:
public class Pluto
{
public static int pippo(double a,float b,int c) {}
public static int pippo(float a,double b,int c) {}
public static int pippo(float a,int b,long c) {}
public static int pippo(float a,long b,int c) {}
}
e a richiamare un metodo con tre interi:
codice:
...
Pluto.pippo(5,5,5);
...
Il compilatore ti segnalerà errore perchè appunto c'è ambiguità in alcune funzioni.
per farti capire con un esercizio più semplice:
codice:
public class Pluto
{
public static int pippo(double a,float b) {}
public static int pippo(float a,double b) {}
}
richiamando:
codice:
...
Pluto.pippo(5,5);
...
questa sistuazione è ambigua perchè tutti e due i metodi sono buoni per Pluto.pippo(5,5) e il compilatore non sa scegliere quello giusto segnalandomi giustamente l'errore.