Es gibt Datentypen, die untereinander zuweisungskompatibel sind, d.h., dass Werte eines Typs gefahrlos ohne Datenverlust in einen anderen Typ umgewandelt werden können. So kann beispielsweise aus einem int-Wert jederzeit ein long gemacht werden, weil int-Werte kleiner sind und auf jeden Fall in einen 1ong passen.
Java prüft nun beim Kompilieren alle impliziten Typumwandlungen (siehe auch folgende Aufgabe) daraufhin, ob die jeweiligen Typen zuweisungskompatibel sind. Ist das der Fall, wird die Umwandlung durchgeführt. Ansonsten gibt der Compiler eine entsprechende Fehlermeldung aus ("possible loss of precision") und bricht den Vorgang ab.