I used to hate Java, but not any more after spending significant time and giving my best to learn basic concepts of OOP.