It is, primarily, a solution for Client-side APIs in Netscape Navigator 2.0.
The push toward moving the application processing from an already weighted server to the local user's interface came with the improvements in end-user desktop technology, both in hardware and software.
This means that the scripts may run slower; each line is interpreted separately, usually one keyword and parameter combination at a time, rather than having faster compiled and code that can be immediately executed by the Java runtime environment within the browser.
Although you have to give up some object-oriented features available in Java, you still have objects with their methods and variables providing the necessary utility.
You can define objects but not classes of objects. The difference between an object and a class, is the difference between a building and its architectural plan; once you have a building, you can use it until its end; but if you have the building's architectural plan, you can build other buildings just like it or make major modifications to it.
You also have to give up object inheritance. In the building analogy, with classes and inheritance you can effectively make modifications to the architectural plan to make a better building, or one more suitable for its use.
Programmers in the classic C, Pascal, and even Java worlds are familiar with strong type declarations where you have to specify that a variable is a string, an integer, etc.
True Java applets do not generally interact with the HTML of a Web page. Each applet is limited to a subarea of the page.
Although an applet can be made to communicate with several other applets on the same page, it cannot, change the text of the same HTML page in which it is located.
In truth, there are actually ways of controlling your browser from within Java applets. However, to do simple things like calculations within forms, changing other frames within the browser, etc., takes a substantial amount of coding for a simple task.
Another important difference, is that you do not have the large set of class libraries that you can use with Java. This limits the scripts to simple alculations and event processing.
Or if you've had enough just hit your back button, this link
is for my other page.