Basically if you can learn OOP then you are all set. As was mentioned java will give you a good start whilst givng a good safety net. Great exception handling plus generics which give you type saftey at the compiler level. Java is used prety heavily in industry these days, I see a lot more work and jobs for java developers than c++ these days. Though .net and by extension c# is pretty strong too