Introduction to Java programming. Fundamentals include language syntax, object-oriented programming, inheritance, polymorphism, exception handling, multithreading. Standard libraries for input/output, graphics programming, built-in data structures. Programming for events, web, networking, generics.