The semantics of Java in K