publicclasshw3Shape{//形状的抽象类publicabstractclassShape{publicShape(){}publicabstractdoublearea();publicabstractvoiddisplayArea();}//三角形类publicstaticclassTrianglee...
public class hw3Shape {
//形状的抽象类
public abstract class Shape{
public Shape(){}
public abstract double area();
public abstract void displayArea();
}
//三角形类
public static class Triangle extends Shape {
//定义属性:三角形的底和高
private double triaSide;
private double triaHeight;
public Triangle(double a,double b){
this.setTrian(a,b);
}
public void setTrian(double a,double b){
this.triaSide = a;
this.triaHeight = b;
}
//定义方法:计算面积
public double area(){
double result;
result = this.triaSide * this.triaHeight / 2;
return result;
}
//定义方法:打印面积
public void displayArea(){
System.out.print("该三角形的面积为:"+area());
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
double a=0,b=0;
System.out.print("请依次输入三角形的边长和对应的高:");
Scanner sc = new Scanner(System.in);
a = sc.nextDouble();
b = sc.nextDouble();
Shape triang = new Triangle(a, b);
triang.displayArea();
sc.close();
}
}
初学者用Eclipse编译时Shape triang = new Triangle(a, b);一直出错,在网上找了好久没找到解决方法,求指教
说错了,用这种方法时错的是public Triangle(double a,double b){ this.setTrian(a,b); }
展开