Source: http://www.unionsquarecap.com/advanced_java_interview_questions_and_answers_for_freshers.pdf