Using interfaces in Java.
The HTML file for the applet:
<HTML>
<APPLET CODE="TestInterface.class" HEIGHT=400 WIDTH=400></APPLET>
</HTML>
The interface file:
import java.awt.*;
public interface ColorObject {
// returns the colors of the object
public Color [] getColors();
// returns true if the color is present, false otherwise
public boolean hasColor(Color c);
public void draw(Graphics g);
}
A class that implements the interface:
import java.awt.*;
public class ColorSquare implements ColorObject {
private Color c;
private int x;
private int y;
private int side;
public ColorSquare(Color c, int x, int y, int side) {
this.c = c;
this.x = x;
this.y = y;
this.side = side;
}
public Color [] getColors() {
Color [] cc = {c};
return cc;
}
public boolean hasColor(Color c) {
return this.c == c;
}
public void draw(Graphics g) {
g.setColor(c);
g.fillRect(x,y,side,side);
}
}
The test file:
import java.awt.*;
import java.applet.*;
public class TestInterface extends Applet {
public void paint(Graphics g) {
ColorObject [] co = new ColorObject[4];
co[0] = new ColorSquare(Color.red, 0, 0, 100);
co[0].draw(g);
}
}
This is an example from CSci 1211 course.