Head first java - Sierra, Kathy; Bates, Bert; Gee, Trisha (Beijing, 2022)