interface 介面名稱
{
final 資料型態 成員名稱=常數;
public abstract 傳回值資料型態 函數名稱(引數...);
//抽象函數並無定義處理方式
}
interface 子介面名稱 extends 父介面1名稱,父介面2名稱,...
{
...
}
interface CShape //父介面 CShape
{
final double PI=3.14;
abstract void setColor(String str);
}
interface CShape2D extends CShape //CShape2D繼承父介面CShape
{
abstract void area();
}
class CCircle implements CShape2D //實作 CShape2D子介面
{
double radius;
String color;
public CCircle(double r)
{
radius=r;
}
public void setColor(String str)
{
color=str;
System.out.println("color="+color);
}
public void show()
{
System.out.println("area="+PI*radius*radius);
}
}
interface CShape //父介面 CShape
{
final double PI=3.14;
abstract void setColor(String str);
}
interface CShape2D extends CShape //CShape2D繼承父介面CShape
{
abstract void area();
}
class CCircle implements CShape2D //實作CShape2D介面
{
double radius;
String color;
public CCircle(double r)
{
radius=r;
}
public void setColor(String str)
{
color=str;
System.out.println("color="+color);
}
public void show()
{
System.out.println("area="+PI*radius*radius);
}
}
public class interface03
{
public static void main(String args[])
{
CCircle moon=new CCircle(5.0);
moon.setColor("yellow");
moon.show();
}
}