//若有一个接口A说明一个面积方法area(), // interface A { // public double area(); //}//请设计一个三角形类GCLass实现接口A中的area()方法,GClass构造函数的参数为三边长s1、s2、s3,均为整数。
//上面是题目要求,下面是写的一段程序 可是老不对 请CSDN帮忙import java.math;interface A
{
public double area();
}class GClass1 implements A
{
public double area(int a,int b,int c)
{
double a1,s;
a1 = (a + b + c) / 2;
s=Sqr(s * (s - a) * (s - b) * (s - c));
System.out.println("面积是:"+s);
} public static void main(String args[])
{
GClass s0=new GClass();
s0.area(3,5,7);
}}
//上面是题目要求,下面是写的一段程序 可是老不对 请CSDN帮忙import java.math;interface A
{
public double area();
}class GClass1 implements A
{
public double area(int a,int b,int c)
{
double a1,s;
a1 = (a + b + c) / 2;
s=Sqr(s * (s - a) * (s - b) * (s - c));
System.out.println("面积是:"+s);
} public static void main(String args[])
{
GClass s0=new GClass();
s0.area(3,5,7);
}}
}class GClass1 implements A { public double area(int a, int b, int c) { double a1 = 0, s = 0;
a1 = (a + b + c);
s = Math.sqrt((a1 * (a1 - a) * (a1 - b) * (a1 - c)));
System.out.println("面积是:" + s);
return s;
} public static void main(String args[]) { GClass1 s0 = new GClass1();
s0.area(3, 5, 7);
}}
}class GClass1 implements A { public double area(int a, int b, int c) { double a1 = 0, s = 0;
a1 = (double) (a + b + c) / 2;
s = Math.sqrt(a1 * (a1 - a) * (a1 - b) * (a1 - c));
System.out.println("面积是:" + s);
return s;
} public static void main(String args[]) { GClass1 s0 = new GClass1();
s0.area(3, 5, 7);
}}
{
public double area();
}class GClass1 implements A
{
int s1,s2,s3;
GCLass1(int a,int b,int c)
{
s1=a;
s2=b;s3=c;
}
public double area()
{
double a1,s;
a1=s=0.0;
a1 = (a + b + c);
s = Math.sqrt((a1 * (a1 - s1) * (a1 - s2) * (a1 - s3)));
System.out.println("面积是:"+s);
}public static void main(String args[])
{
GClass s0=new GClass(3,5,7);
s0.area();
}}//计算三角形的面积我不记得了......不知道对不对
如果算法不对,就改一下area()里的算法.好像是要/2的吧double a1,s;
a1=s=0.0;
a1 = (a + b + c)/2;//========>是不是要/2的呢
s = Math.sqrt((a1 * (a1 - s1) * (a1 - s2) * (a1 - s3)));
System.out.println("面积是:"+s);
楼主给他结贴吧..人家很辛苦的帮写代码的
我感觉他写得挺对的,楼主呀,结了吧
public double area();
}
public class GClass1 implements A {
int a, b, c;
//初始化赋值
public GClass1(int a, int b, int c) {
this.a = a;
this.b = b;
this.c = c;
}
//重写 area() 方法 重写时要求 返回值 方法名称 参数个数 都要与接口的方法一样
public double area() {
double a1, s;
a1 = (a + b + c) / 2;
s = Math.sqrt(a1 * (a1 - a) * (a1 - b) * (a1 - c));
System.out.println("面积是:" + s);
return s;
}
//测试调用
public static void main(String args[]) {
GClass1 s0 = new GClass1(3, 4, 5);
s0.area();
}
}
public void test(double a)
public void test()
这里是3个不同的方法,你调用方法的时候传的参数不一样,用到的方法也会不一样
那么类里面重写方法也必须是: public double area();
但是你写的是: public double area(int a,int b,int c)
它在接口里自然找不到这个方法.而且:
class GClass1 implements A
GClass s0=new GClass();
你写的类名为GClass1,但是定义的s0却是GClass的对象