java方法为什么一定要return返回语句,帮我看看这个程序
publicinterfaceMianJi{publicabstractdoublemianji();//定义面积接口}classPoint{privateintx;pr...
public interface MianJi{
public abstract double mianji(); //定义面积接口
}
class Point {
private int x;
private int y;
public Point(int X, int Y) {
x=X; //构造函数
y=Y;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
}
class SanJiao implements MianJi{
boolean boo;
double sideA,sideB,sideC;
public double area,length;
Point aa,bb,cc;
public SanJiao(){
}
public SanJiao(double a,double b,double c){
sideA=a;
sideB=b;
sideC=c;
}
public SanJiao(Point A,Point B,Point C){
aa=A;
bb=B;
cc=C;
sideA=Math.sqrt(Math.pow(aa.getX()-bb.getX(),2)+Math.pow(aa.getY()-bb.getY(),2));
sideB=Math.sqrt(Math.pow(cc.getX()-bb.getX(),2)+Math.pow(cc.getY()-bb.getY(),2));
sideC=Math.sqrt(Math.pow(aa.getX()-cc.getX(),2)+Math.pow(aa.getY()-cc.getY(),2));
}
public double mianji(){
if((sideA+sideB)>sideC&&(sideA+sideC)>sideB&&(sideB+sideC)>sideA)
boo=true;
else
boo=false;
if(boo){
double p=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
length=sideA+sideB+sideC;
}
return area;
}
}
class Test{
public static void main(String[] args){
Point l= new Point(3,3);
Point z= new Point(3,8);
Point w= new Point(9,3);
SanJiao s= new SanJiao();
SanJiao s1= new SanJiao(3,4,5);
SanJiao s2= new SanJiao(l,z,w);
System.out.println(s1.mianji());
System.out.println(s1.length);
System.out.println(s2.mianji());
System.out.println(s2.length);
}
}
在这个程序里我想不要 return area;可它总说我缺少返回语句,如果我想能返回两个值怎么返回。
在方法里面定义一个带参数的方法 不就解决问题了 多带几个参数就好了 我还不明白如何能达到达回多个值
或者把两个值放在一个集合中(例如:数组),返回集合就行 这种方法是怎样做能写出来吗,不好意思我还刚学不久 展开
public abstract double mianji(); //定义面积接口
}
class Point {
private int x;
private int y;
public Point(int X, int Y) {
x=X; //构造函数
y=Y;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
}
class SanJiao implements MianJi{
boolean boo;
double sideA,sideB,sideC;
public double area,length;
Point aa,bb,cc;
public SanJiao(){
}
public SanJiao(double a,double b,double c){
sideA=a;
sideB=b;
sideC=c;
}
public SanJiao(Point A,Point B,Point C){
aa=A;
bb=B;
cc=C;
sideA=Math.sqrt(Math.pow(aa.getX()-bb.getX(),2)+Math.pow(aa.getY()-bb.getY(),2));
sideB=Math.sqrt(Math.pow(cc.getX()-bb.getX(),2)+Math.pow(cc.getY()-bb.getY(),2));
sideC=Math.sqrt(Math.pow(aa.getX()-cc.getX(),2)+Math.pow(aa.getY()-cc.getY(),2));
}
public double mianji(){
if((sideA+sideB)>sideC&&(sideA+sideC)>sideB&&(sideB+sideC)>sideA)
boo=true;
else
boo=false;
if(boo){
double p=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
length=sideA+sideB+sideC;
}
return area;
}
}
class Test{
public static void main(String[] args){
Point l= new Point(3,3);
Point z= new Point(3,8);
Point w= new Point(9,3);
SanJiao s= new SanJiao();
SanJiao s1= new SanJiao(3,4,5);
SanJiao s2= new SanJiao(l,z,w);
System.out.println(s1.mianji());
System.out.println(s1.length);
System.out.println(s2.mianji());
System.out.println(s2.length);
}
}
在这个程序里我想不要 return area;可它总说我缺少返回语句,如果我想能返回两个值怎么返回。
在方法里面定义一个带参数的方法 不就解决问题了 多带几个参数就好了 我还不明白如何能达到达回多个值
或者把两个值放在一个集合中(例如:数组),返回集合就行 这种方法是怎样做能写出来吗,不好意思我还刚学不久 展开
7个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询