salve a tutti, avrei un dubbio che non riesco a capire, questo è il codice

codice:
        TreeMap <String, String> mappa = new TreeMap <String, String>();

	String nomi[] = {"paolo", "ciccio", "pasquale", "lucrezia"};
	String eta[] = {"35 anni", "12 anni", "45 anni", "22 anni"};

	for (int i =0; i < nomi.length; i++)
	{
		mappa.put(nomi[i], eta[i]);
	}
		SortedSet <String> chiave =  mappa.keySet();
per quale motivo (in linea teorica) nell'ultima riga di codice è necessario fare il cast
codice:
SortedSet <String> chiave =  (SortedSet<String>) mappa.keySet();
oppure

codice:
Set <String> chiave =  mappa.keySet();
?????

grazie in anticipo!!!