Java
provides built-in support for multithreaded programming. A multithreaded
program contains two or more parts that can run concurrently. Each part of such
a program is called a thread, & each thread defines a separate form of
execution. Thus, multithreading is a specialized form of multitasking.
Multithreading
enables us to write very efficient programs that maximize the CPU
utilization.