נראה לי קצת רקורסיבי העניין הזה
מפנה אותך לספר של ברוס אקל בc++... באמת לא נראה לי העניינים שם כל כך מסתמכים על c/c++ באופן חזק, סה"כ ג'אווה שפה יותר פשוטה (לפחות בהתחלה, עם ניהול פוינטרים למשל וכו'), היא אומנם יותר מכוונת oop מאשר פרוצדוראלי כמו c, אבל אפשר להסתדר... ספר גם לא רע (המכוון בעיקר ללימוד מבוא למדמ"ח בשפת ג'אווה, אך אם את מכירה את מבוא למדמ"ח (למשל c/cpp וכו' אולי אפשר למצוא ספר מקוצר יותר)) הוא An Introduction To Computer Science With JAVA של Kamin.