This document contains lecture notes on Java programming divided into 6 units. Unit 1 provides an overview of Java and covers data types, variables, arrays, operators, control statements and classes. It also discusses I/O operations like reading console input/output and files. Unit 2 covers string handling and the StringBuffer class. Unit 3 discusses packages, interfaces and exception handling. Unit 4 focuses on multithreading concepts. Unit 5 covers applets, event handling and the Abstract Window Toolkit. Unit 6 introduces Swing and JDBC. The document also includes examples of Java programs and lists lab experiments and reference books.