For an introduction to Java, there is ample choice.
An excellent online tutorial can be found on
java.sun.com/docs/books/tutorial .
As textbooks on C++ I recommend
[Lippman91], and for the more advanced reader [Stroustrup98].
For an extensive introduction to STL, read [STL].
[Coplien92] is the original introduction to idioms in C++.
The by now classical book for patterns is [GOF94].
Well worth reading are the many articles in the POPL proceedings,
[POPL1], [POPL2] and [POPL3].