Javassa - samoin kuin monessa muussakin nykykielessä - on mahdollista kuormittaa aliohjelman nimeä. Eli samassa näkyvyysalueessa saa esiintyä samannimisiä aliohjelmia kunhan niiden parametrit eroavat toisistaan määrältään ja/tai tyypiltään.
private static double mittakaava_muunnos(int matka_mm, double mittakaava) { return matka_mm*mittakaava/MM_KM; } private static double mittakaava_muunnos(int matka_mm) { return matka_mm*MITTAKAAVA/MM_KM; } ... matka_km = mittakaava_muunnos(20); ... matka_km = mittakaava_muunnos(32,20000.0);
Kääntäjä pystyy kutsussa päättelemään oikean aliohjelman parametrien määrän ja tyypin mukaan.