怎么把判断三角形三边长加到三角形面积计算里

三角形面积计算代码:

package edu.jmi.shape;
import java.util.Scanner;

public class Sanjiaoxing extends Shape{
private float a;//私有属性,除该类外,其他地方均不能直接访问
private float b;
private float c;
private float h;

//计算并返回周长,输入:无,返回:周长值
public float zhouChang(){
float zhou = a+b+c;
return zhou;
}
public float mianJi(){
float mian = (a*h)/2;
return mian;
}
//读取输入,计算并显示结果
void handle(){
//1 提示
System.out.println("请输入三角的三条边长和高");
//2 读取输入
Scanner sc = new Scanner(System.in);
a = sc.nextFloat();
b = sc.nextFloat();
c = sc.nextFloat();
h = sc.nextFloat();
//计算
float zhou = zhouChang();
float mian = mianJi();
//输出
System.out.println("三角形周长是"+zhou+",面积是"+mian+"");
}
/**

  • @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Sanjiaoxing san=new Sanjiaoxing();
    san.a =6;
    san.b =5;
    san.c =4;
    san.h =4;
    System.out.println("请输入三角形的三边长和高:");
    Scanner sc = new Scanner(System.in);
    san.a= sc.nextFloat();
    san.b= sc.nextFloat();
    san.c= sc.nextFloat();
    san.h= sc.nextFloat();
    float zc = san.zhouChang();//通过对象调用周长计算
    System.out.println("周长:"+zc);
    float mj = san.mianJi();
    System.out.println("面积:"+mj);
    }//main

    }

    判断三边是否能成三角形:

    package edu.jmi.java1;
    import java.util.Scanner;

    public class Sanjiaoxing {

    /**

  • @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    System.out.println("输入三条边:");
    Scanner sc = new Scanner(System.in);
    int i = sc.nextInt();
    int j = sc.nextInt();
    int k = sc.nextInt();
    if(i>0 && j>0 && k>0 &&
    i+j>k && i+k>j && j+k>i ){
    System.out.println("Yes");
    }else{
    System.out.println("No");
    }
    }//main

    }

首先,你的第一个类Sanjiaoxing,直接去掉extends Shape就可以了,运行的结果就能输出你需要的内容的啊。
后面的代码为什么又是一Sanjiaoxing类呢?而且你没有给出Shape的定义。
所以呢,直接修正第一个Sanjiaoxing类去掉继承Shape就可以了。

刚出炉的,供参考
/**

  • 三角型面积计算
  • @author Administrator * */ public class Test04 { public static void main(String[] args) { Trangle trangle=new Trangle(3,4,5); System.out.println("是否是三角形:"+trangle.check()); System.out.println("周长:"+trangle.perimeter()); System.out.println("面积:"+trangle.area()); } }

class Trangle {
/* 三角型三边 */
private int x;
private int y;
private int z;

public Trangle(int x, int y, int z) {
    this.x = x;
    this.y = y;
    this.z = z;
}

public boolean check() {// 三角型判断
    return x + y > z && x - y < z;
}

public int perimeter() {// 三角型周长
    return x + y + z;
}

public double area() {//三角型面积
    int p = (x + y + z) / 2;
    return Math.sqrt(p * (p - x) * (p - y) * (p - z));//面积计算公式
}

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;
}

public int getZ() {
    return z;
}

public void setZ(int z) {
    this.z = z;
}

}