当前位置: 技术问答>java相关
谁能帮我解释一下此行代码的意思?
来源: 互联网 发布时间:2017-04-26
本文导语: interface area { public final static float pi=3.14f; public float compute(float x,float y); public float div(float x, float y); } class rectangle implements area { public float compute(float x,float y) { return(x*y); } public float div(float x,float ...
interface area
{
public final static float pi=3.14f;
public float compute(float x,float y);
public float div(float x, float y);
}
class rectangle implements area
{
public float compute(float x,float y)
{
return(x*y);
}
public float div(float x,float y)
{
return (x+y);
}
}
class circle implements area
{
public float compute(float x,float y)
{
return(pi*x*x);
}
public float div(float x,float y)
{
return (x+y);
}
}
class firstinterfaceprog
{
public static void main(String args[])
{
rectangle rect=new rectangle();
circle cir=new circle();
area area1;//这行是什么意思?
area1=rect;//这行是什么意思?
System.out.println("area of rectangle="+area1.compute(10,20));
System.out.println("area of rectangle="+area1.div(10,20));
area1=cir;
System.out.println("area of circle="+area1.compute(10,0));
System.out.println("area of circle="+area1.div(10,0));
}
}
{
public final static float pi=3.14f;
public float compute(float x,float y);
public float div(float x, float y);
}
class rectangle implements area
{
public float compute(float x,float y)
{
return(x*y);
}
public float div(float x,float y)
{
return (x+y);
}
}
class circle implements area
{
public float compute(float x,float y)
{
return(pi*x*x);
}
public float div(float x,float y)
{
return (x+y);
}
}
class firstinterfaceprog
{
public static void main(String args[])
{
rectangle rect=new rectangle();
circle cir=new circle();
area area1;//这行是什么意思?
area1=rect;//这行是什么意思?
System.out.println("area of rectangle="+area1.compute(10,20));
System.out.println("area of rectangle="+area1.div(10,20));
area1=cir;
System.out.println("area of circle="+area1.compute(10,0));
System.out.println("area of circle="+area1.div(10,0));
}
}
|
前一行声明一个area型的变量area1, 后一行将rect赋值给area1.
|
同意楼上
本程序是用来说明interface在多态方面的应用
本程序是用来说明interface在多态方面的应用
|
呵呵,我也刚开始学。
"前一行声明一个area型的变量area1, 后一行将rect赋值给area1."
只是表面解释。
同意sayo(嗨呦,嗨呦……) ,是多态。
area1=rect;//也许是向上转型。再研究 :)
"前一行声明一个area型的变量area1, 后一行将rect赋值给area1."
只是表面解释。
同意sayo(嗨呦,嗨呦……) ,是多态。
area1=rect;//也许是向上转型。再研究 :)
|
area是一个接口句柄变量,通过将实现该接口的对象的句柄(如rect)赋给area,来执行该接口的不同的实现