Advanced Java programming (Oxford, 2015)