java中接口的实现及应用

  • A+
所属分类:程序设计

java接口的实现及应用】
// app10_4, 接口的实现范例
interface iShape2D //定义接口??
{
final double pi=3.14;
abstract void area();
}

class CRectangle implements iShape2D // 实现CRectangle类
{
int width,height;
public CRectangle(int w,int h){
width=w;
height=h;
}
public void area(){ // 定义area()的处理方式
System.out.println("area="+width*height);
}
}

class CCircle implements iShape2D // 实现CCircle类
{
double radius;
public CCircle(double r){
radius=r;
}
public void area(){ // 定义area()的处理方式
System.out.println("area="+pi*radius*radius);
}
}

public class app10_4
{
public static void main(String args[])
{
CRectangle rect=new CRectangle(5,10);
rect.area(); //调用CRectangle类里的area() method

CCircle cir=new CCircle(2.0);
cir.area(); // 调用CCircl类里的area() method
}
}
// app10_5,通过接口类型的变量来访问对象
class app10_5
{
public static void main(String args[])
{
iShape2D var1,var2; // ?派?明接口类型的变量
var1=new CRectangle(5,10); // 将接口类型的变量var1指向新建的对象
var1.area(); // 通过接口var1调用show() method

var2=new CCircle(2.0); // 将接口类型的变量var2指向新建的对象
var2.area(); // 通过接口var2调用show() method
}
}
// app10_6, 实现两个以上的接口??
interface iShape2D // 定义iShape2D接口
{
final double pi=3.14;
abstract void area();
}

interface iColor // 定义iColor接口
{
abstract void setColor(String str);
}

class CCircle implements iShape2D,iColor // 实现iShape2D与iColor接口
{
double radius;
String color;
public CCircle(double r){
radius=r;
}
public void setColor(String str){ // 定义iColor接口里的setColor()
color=str;
System.out.println("color="+color);
}
public void area(){ // 定义iShape2D接口里的area() method
System.out.println("area="+pi*radius*radius);
}
}

public class app10_6
{
public static void main(String args[])
{
CCircle cir;
cir=new CCircle(2.0);
cir.setColor("Blue"); // 调用CCircl类里的setColor() method
cir.area(); // 调用CCircl类里的show() method
}
}

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: