- Threads are lightweight processes that can be executed concurrently within a process to improve responsiveness and resource utilization. - Threads share the same memory as the process they belong to, making communication between threads cheaper than between processes. - The main() method represents the initial thread when a Java program starts. Additional threads can be created by extending the Thread class or implementing the Runnable interface.