Top Banner
29

Syllabus

Feb 22, 2016

Download

Documents

cicada

Syllabus. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Syllabus
Page 2: Syllabus

Syllabus• I/O-I/O Basics – Byte Streams and Character

Streams, reading Console Input, Collections Framework, Applets & Applet Architecture – Applet Skelton – Passing Parameters to Applet, Event Handling – Event Model – Event Classes – Event Listener Interfaces, AWT – AWT Classes – AWT Controls – Layout Managers and Menus. Swing – JApplet-Jbuttons - JTables

Page 3: Syllabus

Applets• Applets are small applications that are accessed

on an Internet server, transported over the Internet, automatically installed, and run as part of a web document.

• After an applet arrives on the client, it has limited access to resources so that it can produce a graphical user interface and run complex computations without introducing the risk of viruses or breaching data integrity.

Page 4: Syllabus

import java.awt.*;import java.applet.*;/*<applet code="SimpleApplet" width=200 height=60></applet>*/

public class SimpleApplet extends Applet {public void paint(Graphics g) {g.drawString("A Simple Applet", 20, 20);}}

Page 5: Syllabus

Applets• This applet begins with two import statements. • The first imports the Abstract Window Toolkit

(AWT) classes. Applets interact with the user (either directly or indirectly) through the AWT, not through the console-based I/O classes.

• The AWT contains support for a window-based, graphical user interface.

• The second import statement imports the applet package, which contains the class Applet.

• Every applet that you create must be a subclass of Applet.

Page 6: Syllabus

Applets• The next line in the program declares the class

SimpleApplet. • This class must be declared as public, because it

will be accessed by code that is outside the program.

• paint() method is defined by the AWT and must be overridden by the applet. paint() is called each time that the applet must redisplay its output.

Page 7: Syllabus

Applets• This situation can occur for several reasons. For

example, the window in which the applet is running can be overwritten by another window and then uncovered. Or, the applet window can be minimized and then restored.

• paint() is also called when the applet begins execution. Whatever the cause, whenever the applet must redraw its output, paint() is called.

Page 8: Syllabus

Applets• The paint() method has one parameter of type

Graphics.• This parameter contains the graphics context,

which describes the graphics environment in which the applet is running.

• This context is used whenever output to the applet is required.

• Inside paint( ) is a call to drawString( ), which is a member of the Graphics class.

• This method outputs a string beginning at the specified X,Y location.

Page 9: Syllabus

Applets• The applet does not have a main( ) method. • Unlike Java programs, applets do not begin

execution at main( ). • In fact, most applets don’t even have a main( )

method.• Instead, an applet begins execution when the

name of its class is passed to an applet viewer or to a network browser.

Page 10: Syllabus

Applets• There are two ways in which you can run an

applet:– Executing the applet within a Java-compatible web

browser.– Using an applet viewer, such as the standard tool,

appletviewer. • An applet viewer executes your applet in a

window. • This is generally the fastest and easiest way to

test your applet.

Page 11: Syllabus

Applets• Applets do not need a main( ) method.• Applets must be run under an applet viewer or a

Java-compatible browser.• User I/O is not accomplished with Java’s stream

I/O classes. Instead, applets use the interface provided by the AWT or Swing

• There are two varieties of applets– Applets– JApplets

Page 12: Syllabus

Applets• Applets - use the Abstract Window Toolkit (AWT)

to provide the graphic user interface (or use no GUI at all). This style of applet has been available since Java was first created.

• JApplets - are based on the Swing class JApplet. • Swing applets use the Swing classes to provide

the GUI. • Swing offers a richer and often easier-to-use user

interface than does the AWT. Thus, Swing-based applets are now the most popular.

Page 13: Syllabus

Applets• However, traditional AWT-based applets are still

used, especially when only a very simple user interface is required.

• Thus, both AWT- and Swing-based applets are valid.

• Because JApplet inherits Applet, all the features of Applet are also available in JApplet

Page 14: Syllabus

Applets - Architecture• First, applets are event driven.• An applet waits until an event occurs. The run-

time system notifies the applet about an event by calling an event handler that has been provided by the applet.

• Once this happens, the applet must take appropriate action and then quickly return.

• Applet should not enter a “mode” of operation in which it maintains control for an extended period.

Page 15: Syllabus

Applets - Architecture• Instead, it must perform specific actions in

response to events and then return control to the run-time system.

• In those situations in which your applet needs to perform a repetitive task on its own (for example, displaying a scrolling message across its window), you must start an additional thread of execution.

Page 16: Syllabus

Applets - Architecture• Second, the user initiates interaction with an

applet—not the other way around.• In a non-windowed program, when the program

needs input, it will prompt the user and then call some input method, such as readLine().

• This is not the way it works in an applet. • Instead, the user interacts with the applet as and

when he or she wants• These interactions are sent to the applet as

events to which the applet must respond.

Page 17: Syllabus

Applets - Skeleton• Applets override a set of methods that provides

the basic mechanism by which the browser or applet viewer interfaces to the applet and controls its execution.

• Four of these methods, init( ), start( ), stop( ), and destroy( ), apply to all applets and are defined by Applet.

• Default implementations for all of these methods are provided. Applets do not need to override those methods they do not use.

• However, only very simple applets will not need to define all of them.

Page 18: Syllabus

Applets - Skeleton• AWT-based applets will also override the paint( )

method, which is defined by the AWT Component class.

• This method is called when the applet’s output must be redisplayed.

• Swing-based applets use a different mechanism to accomplish this task.

Page 19: Syllabus

Applets - Skeleton• When an applet begins, the following methods

are called, in this sequence:1. init( )2. start( )3. paint( )

When an applet is terminated, the following sequence of method calls takes place:

1. stop( )2. destroy( )

Page 20: Syllabus

Applets - Skeleton• The init() method is the first method to be called.

This is where you should initialize variables.• This method is called only once during the

runtime of your applet.• The start( ) method is called after init( ). It is also

called to restart an applet after it has been stopped.

• Whereas init( ) is called once—the first time an Applet is loaded—start( ) is called each time an applet’s HTML document is displayed onscreen.

• So, if a user leaves a web page and comes back, the applet resumes execution at start( ).

Page 21: Syllabus

Applets - Skeleton• The paint() method is called each time your

applet’s output must be redrawn. • The stop() method is called when a web browser

leaves the HTML document containing the applet—when it goes to another page, for example.

• When stop() is called, the applet is probably running.

• You should use stop() to suspend threads that don’t need to run when the applet is not visible.

• You can restart them when start() is called if the user returns to the page.

Page 22: Syllabus

Applets• The destroy() method is called when the

environment determines that your applet needs to be removed completely from memory.

• At this point, you should free up any resources the applet may be using. The stop( ) method is always called before destroy( ).

• In some situations, your applet may need to override another method defined by the AWT, called update( ). This method is called when your applet has requested that a portion of its window be redrawn. The default version of update( ) simply calls paint( ).

Page 23: Syllabus

Applets• An applet writes to its window only when its

update( ) or paint( ) method is called by the AWT.• Constraint imposed on an applet is that it must

quickly return control to the run-time system. It cannot create a loop inside paint() that repeatedly scrolls the banner, for example.

• This would prevent control from passing back to the AWT.

• Given this constraint, Whenever your applet needs to update the information displayed in its window, it simply calls repaint( ).

Page 24: Syllabus

Applets• The repaint( ) method is defined by the AWT. • It causes the AWT run-time system to execute a

call to your applet’s update( ) method, which, in its default implementation, calls paint().

• Thus, for another part of your applet to output to its window, simply store the output and then call repaint( ).

• The AWT will then execute a call to paint( ), which can display the stored information.

Page 25: Syllabus

Applets

Page 26: Syllabus

< APPLET[CODEBASE = codebaseURL]CODE = appletFile[ALT = alternateText][NAME = appletInstanceName]WIDTH = pixels HEIGHT = pixels[ALIGN = alignment][VSPACE = pixels] [HSPACE = pixels]>[< PARAM NAME = AttributeName VALUE = AttributeValue>][< PARAM NAME = AttributeName2 VALUE = AttributeValue>]. . .[HTML Displayed in the absence of Java]</APPLET>

Page 27: Syllabus

Applets• CODEBASE- is an optional attribute that specifies

the base URL of the applet code, which is the directory that will be searched for the applet’s executable class file

• CODE - is a required attribute that gives the name of the file containing your applet’s compiled .class file.

• ALT - The ALT tag is an optional attribute used to specify a short text message that should be displayed if the browser recognizes the APPLET tag but can’t currently run Java applets.

Page 28: Syllabus

Applets• NAME is an optional attribute used to specify a

name for the applet instance.• Applets must be named in order for other applets

on the same page to find them by name and communicate with them.

• WIDTH and HEIGHT are required attributes that give the size (in pixels) of the applet display area.

• ALIGN is an optional attribute that specifies the alignment of the applet.

Page 29: Syllabus

Applets• VSPACE and HSPACE These attributes are

optional. • VSPACE specifies the space, in pixels, above and

below the applet. • HSPACE specifies the space, in pixels, on each

side of the applet.• PARAM NAME and VALUE - The PARAM tag

allows you to specify applet-specific arguments in an HTML page.

• Applets access their attributes with the getParameter( ) method.