Java Reference
In-Depth Information
Proxy (Chapter 11)
SOLUTION 11.1
The image-display methods of ImageIconProxy forward their calls to the current image:
public int getIconHeight()
{
return current.getIconHeight();
}
public int getIconWidth()
{
return current.getIconWidth();
}
public synchronized void paintIcon(
Component c, Graphics g, int x, int y)
{
current.paintIcon(c, g, x, y);
}
SOLUTION 11.2
The load() method sets the image to Loading…, whereas the run() method, executing in a
separate thread, loads the desired image:
public void load(JFrame callbackFrame)
{
this.callbackFrame = callbackFrame;
setImage(LOADING.getImage());
callbackFrame.repaint();
new Thread(this).start();
}
public void run()
{
setImage(new ImageIcon(filename).getImage());
callbackFrame.pack();
}
SOLUTION 11.3
As the class diagram shows, a RocketImpl constructor accepts a price and an apogee:
Rocket biggie = new RocketImpl(29.95, 820);
You could declare biggie to be of type RocketImpl . However, what is important about
biggie is that it fulfills the Rocket interface that a client will look for.
Search WWH ::




Custom Search