Java Schulung - Jens.Trapp@DLR.De - August 1996

interface


Java erlaubt keine Mehrfachvererbung.

Dadurch sollen Mehrdeutigkeiten verhindert werden.

Manchmal ist aber eine Erweiterung der Funktionalität erwünscht. Beispielsweise kann es sinnvoll sein, das Geometrie-Paket um Grafikfähigkeiten zu erweitern. Dazu geeignet sind interface-Klassen:

Interfaces sind rein-abstrakte Klassen. Sie dürfen außer Konstanten (static final ) und abstrakten Methoden nichts enthalten.

Statt des Keywords class wird das Keyword interface verwendet.

	package Grafik;
	import java.awt.*;

	public interface GrafikObjekte
	{
		public void zeichnen(Graphics g);
	}
	

Statt des Keywords extends wird das Keyword implements bei abgeleiteten Klassen verwendet. package Grafik; import java.awt.*; import Geometrie.*;

public class GrafikKreis extends Kreis implements GrafikObjekte
{
	public GrafikKreis()
	{
		super();
	}
	public GrafikKreis(double x, double y, double r)
	{
		super(x,y,r);
	}
	public void zeichnen(Graphics g)
	{
		g.drawOval((int)(mitte.x-radius),(int)(mitte.y-radius),
			2* (int)radius, 2*(int)radius);
	}
}