Why is Java not a Purely Object-Oriented Language?