Object Oriented Programming Notes for college