It is a dynamic and interactive program that runs inside a web page displayed by a java capable browser. It is actually java byte code embedded in html page, generally for achieving communication with the user.
The applet when requested from the server, gets loaded in the browser and runs in a sand boxed environment. It does not have access to any other things which exists outside of the sand box. Java applets are not much in use now since it is too heavyweight and thus have performance bottleneck.
U can find usage of them in:
JPC Emulator: It is an x86 emulator written in Java and uses Java Applets.
Statistics: Usage of Applets in developing Web Applications in Statistics is not yet obsolete.
Education: Still studied in universities as part of course-curriculum.
Yahoo Games: Uses Java Applets for games.
Small Applications: Good platform to develop Small Applications
Client Machine: When client machine is to be used the Applets can be considered a good choice i.e. in creating authentication app etc
Android: Billions of Android devices is running them on Java Virtual Machine.
Below is an image showing the life cycle of an applet.