利用類的繼承計算並輸出圓柱體的體積和表面積
阿新 • • 發佈:2018-12-20
import java.util.*; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); double x,y,r,h; x=in.nextDouble();y=in.nextDouble();//圓心座標 r=in.nextDouble();h=in.nextDouble();//半徑高度 Cylinder cy=new Cylinder(x,y,r,h); System.out.println("r="+cy.getR()); System.out.println("h="+cy.getH()); System.out.println("V="+Math.round(cy.calcV()*100)/100.); System.out.println("S="+Math.round(cy.calcArea()*100)/100.); } } class Circle{ private double x,y,r; public Circle(double x,double y,double r){ this.x=x;this.y=y;this.r=r; } public double perimeter(){ //計算圓周長 return 2*Math.PI*r; } public double area(){ //計算圓面積 return Math.PI*r*r; } public double getR(){ return r; } } class Cylinder extends Circle{ private double h; public Cylinder(double x, double y, double r,double h) { super(x, y, r);//呼叫父類構造方法 this.h=h; // TODO Auto-generated constructor stub } public double getH(){ return h; } public double calcV(){//計算圓柱體體積 return super.area()*h; //呼叫父類的求圓面積的方法 } public double calcArea(){//計算圓柱體表面積 return super.area()*2+super.perimeter()*h;//呼叫父類的求圓周長的方法 } }
輸出都為返回雙精度浮點數