以下每一个类和每一个接口都各自存成一个和类名或接口名一致的文件,然后编译后运行Test类。
声明:绝对原创,但是由于时间禁,未经编译。
public interface ShapeArea{
public double getArea();
public double getPerimeter();
}
public class MyRectangle implments ShapeArea{
private double width;
private double height;
public MyRectangle(double w, double h){
this.width = w;
this.height = h;
}
public double getArea(){
return w * h;
}
public double getPerimeter(){
return 2 * (w + h);
}
public String toString(){
return "width=" + width + ",height=" + height +
",perimeter=" + getPerimeter() +
", area=" + getArea();
}
public void setWidth(double width){
this.width = width;
}
public double getWidth(){
return width;
}
public void setHeight(double height){
this.height = height;
}
public double getHeight(){
return height;
}
}
public class MyTriangle implments ShapeArea{
private double x;
private double y;
private double z;
public MyTriangle(double x, double y, double z){
this.x = x;
this.y = y;
this.z = z;
}
public double getArea(){
return 这里是三角形面积的计算公式,我不会写 ;
}
public double getPerimeter(){
return x + y + z;
}
public String toString(){
return "three sides:" + x + "," + y + "," + z +
",perimeter=" + getPerimeter() +
", area=" + getArea();
}
public void setX(double x){
this.x = x;
}
public double getX(){
return x;
}
public void setY(double y){
this.y = y;
}
public double getY(){
return y;
}
public void setZ(double z){
this.z = z;
}
public double getZ(){
return z;
}
}
public class Test{
public static void main(String[] args){
ShapeArea sa = new MyRectangle(2.0,3.0);
System.out.println(sa.toString());
}
}