The Java Language Specification. - Gosling, James; Bill, Joy; Steele, Guy; Bracha, Gilad; Buckley, Alex (Addison-Wesley, 2014)