java原始碼——計算立體圖形的表面積和體積
計算球,圓柱,圓錐的表面積和體積。
利用介面實現。
上程式碼。
Contants.java
常量儲存類
package com.fuxuemingzhu.solidgraphics.contants; /** * <p> * Title: Contants * </p> * <p> * Description:常量類,存放程式裡用到的常量值 * </p> * * @author fuxuemingzhu * * @email [email protected] * * @date 2014年10月28日 下午2:18:43 */ public class Contants { /** * PI 圓周率 */ public static float PI = (float) Math.PI; }
SolidGraphics.java
立體圖形介面,所有立體圖形都要實現這個介面
package com.fuxuemingzhu.solidgraphics.base; /** * <p> * Title: SolidGraphics * </p> * <p> * Description:立體圖形介面,所有立體圖形都要實現這個介面 * </p> * * @author fuxuemingzhu * * @email [email protected] * * @date 2014年10月28日 下午1:52:22 */ public interface SolidGraphics { /** * <p> * Title: caculateArea * </p> * <p> * Description:計算立體圖形的表面積 * </p> * * @return 立體的表面積 * */ public float caculateArea(); /** * <p> * Title: caculateVolume * </p> * <p> * Description:計算立體圖形的體積 * </p> * * @return 立體的體積 * */ public float caculateVolume(); }
Ball.java球類
Cylinder.javapackage com.fuxuemingzhu.solidgraphics.entity; import com.fuxuemingzhu.solidgraphics.base.SolidGraphics; import com.fuxuemingzhu.solidgraphics.contants.Contants; /** * <p> * Title: Ball * </p> * <p> * Description:球類 * </p> * * @author fuxuemingzhu * * @email
[email protected] * * @date 2014年10月28日 下午1:54:53 */ public class Ball implements SolidGraphics { /** * r 球的半徑 */ private float r; /** * <p> * Title: Ball * </p> * <p> * Description: 構造方法,根據球的半徑構造球 * </p> * * @param r */ public Ball(float r) { super(); this.r = r; } /** * (非 Javadoc) * <p> * Title: caculateArea * </p> * <p> * Description:計算球的表面積 * </p> * * @return 立體的表面積 * @see com.<span style="font-family: Arial, Helvetica, sans-serif;">fuxuemingzhu</span><span style="font-family: Arial, Helvetica, sans-serif;">.solidgraphics.base.SolidGraphics#caculateArea()</span> */ public float caculateArea() { float area = (float) (4 * Contants.PI * Math.pow(r, 2)); return area; } /** * (非 Javadoc) * <p> * Title: caculateVolume * </p> * <p> * Description:計算球的體積 * </p> * * @return 立體的體積 * @see com.caifugui.solidgraphics.base.SolidGraphics#caculateVolume() */ public float caculateVolume() { float volume = (float) ((4f / 3f) * Contants.PI * Math.pow(r, 3)); return volume; } /** * @return the r */ public float getR() { return r; } /** * @param r * the r to set */ public void setR(float r) { this.r = r; } }圓柱類
Tapered.javapackage com.fuxuemingzhu.solidgraphics.entity; import com.fuxuemingzhu.solidgraphics.base.SolidGraphics; import com.fuxuemingzhu.solidgraphics.contants.Contants; /** * <p> * Title: Cylinder * </p> * <p> * Description:圓柱類 * </p> * * @author fuxuemingzhu * * @email [email protected] * * @date 2014年10月28日 下午1:55:07 */ public class Cylinder implements SolidGraphics { /** * r 圓柱的半徑 */ private float r; /** * h 圓柱的高 */ private float h; /** * <p> * Title: Cylinder * </p> * <p> * Description:構造方法,根據圓柱的半徑和高構造圓柱 * </p> * * @param r * @param h */ public Cylinder(float r, float h) { super(); this.r = r; this.h = h; } /** * (非 Javadoc) * <p> * Title: caculateArea * </p> * <p> * Description:計算圓柱的表面積 * </p> * * @return 立體的表面積 * @see com.fuxuemingzhu.solidgraphics.base.SolidGraphics#caculateArea() */ public float caculateArea() { float area = (float) (Contants.PI * Math.pow(r, 2) * 2 + 2 * Contants.PI * r * h); return area; } /** * (非 Javadoc) * <p> * Title: caculateVolume * </p> * <p> * Description:計算圓柱的體積 * </p> * * @return 立體的體積 * @see com.fuxuemingzhu.solidgraphics.base.SolidGraphics#caculateVolume() */ public float caculateVolume() { float volume = (float) (Contants.PI * Math.pow(r, 2) * h); return volume; } /** * @return the r */ public float getR() { return r; } /** * @param r * the r to set */ public void setR(float r) { this.r = r; } /** * @return the h */ public float getH() { return h; } /** * @param h * the h to set */ public void setH(float h) { this.h = h; } }
圓錐類
package com.fuxuemingzhu.solidgraphics.entity; import com.fuxuemingzhu.solidgraphics.base.SolidGraphics; import com.fuxuemingzhu.solidgraphics.contants.Contants; /** * <p> * Title: Tapered * </p> * <p> * Description:圓錐類 * </p> * * @author fuxuemingzhu * * @email [email protected] * * @date 2014年10月28日 下午1:55:18 */ public class Tapered implements SolidGraphics { /** * r 圓錐的半徑 */ private float r; /** * h 圓錐的高 */ private float h; /** * <p> * Title: Tapered * </p> * <p> * Description:構造方法,根據圓錐的半徑和高構造圓錐 * </p> * * @param r * @param h */ public Tapered(float r, float h) { super(); this.r = r; this.h = h; } /** * (非 Javadoc) * <p> * Title: caculateArea * </p> * <p> * Description: 計算圓錐的表面積 * </p> * * @return 立體的表面積 * @see com.fuxuemingzhu.solidgraphics.base.SolidGraphics#caculateArea() */ public float caculateArea() { float area = (float) (0.5f * Math.sqrt(Math.pow(r, 2) + Math.pow(h, 2)) * 2 * Contants.PI * r + Contants.PI * Math.pow(r, 2)); return area; } /** * (非 Javadoc) * <p> * Title: caculateVolume * </p> * <p> * Description: 計算圓錐的體積 * </p> * * @return 立體的體積 * @see com.fuxuemingzhu.solidgraphics.base.SolidGraphics#caculateVolume() */ public float caculateVolume() { float volume = (float) ((1f / 3f) * Contants.PI * Math.pow(r, 2) * h); return volume; } /** * @return the r */ public float getR() { return r; } /** * @param r * the r to set */ public void setR(float r) { this.r = r; } /** * @return the h */ public float getH() { return h; } /** * @param h * the h to set */ public void setH(float h) { this.h = h; } }
Main.java
主類,展示各立體的表面積,體積等資訊
package com.fuxuemingzhu.solidgraphics.main; import com.fuxuemingzhu.solidgraphics.entity.Ball; import com.fuxuemingzhu.solidgraphics.entity.Cylinder; import com.fuxuemingzhu.solidgraphics.entity.Tapered; /** * <p> * Title: Main * </p> * <p> * Description:主類,展示各立體的表面積,體積等資訊 * </p> * * @author fuxuemingzhu * * @email [email protected] * * @date 2014年10月28日 下午3:46:57 */ public class Main { /** * ball 宣告一個球體 */ private static Ball ball; /** * cylinder 宣告一個圓柱體 */ private static Cylinder cylinder; /** * tapered 宣告一個圓錐體 */ private static Tapered tapered; /** * <p> * Title: main * </p> * <p> * Description:main()方法,程式的入口 * </p> * * @param args * */ public static void main(String[] args) { // ///構造並展示球體 showBall(8f); // //構造並展示圓柱體 showCylinder(4f, 10f); // //構造並展示圓錐體 showTapered(4f, 10f); } /** * <p> * Title: showBall * </p> * <p> * Description:構造並展示一個球體 * </p> * * @param r * */ private static void showBall(float r) { // //構造一個球體 ball = new Ball(r); // //展示球體 System.out.println("輸入的球的半徑是:" + ball.getR()); System.out.println("此球的表面積是:" + ball.caculateArea()); System.out.println("此球的體積是:" + ball.caculateVolume() + "\n"); } /** * <p> * Title: showCylinder * </p> * <p> * Description:構造並展示一個圓柱體 * </p> * * @param r * @param h * */ private static void showCylinder(float r, float h) { // /構造一個圓柱體 cylinder = new Cylinder(r, h); // /展示圓柱體 System.out.println("輸入的圓柱的底面圓半徑是:" + cylinder.getR() + ",高為:" + cylinder.getH()); System.out.println("此圓柱的表面積是:" + cylinder.caculateArea()); System.out.println("此圓柱的體積是:" + cylinder.caculateVolume() + "\n"); } /** * <p> * Title: showTapered * </p> * <p> * Description:構造並展示一個圓錐體 * </p> * * @param r * @param h * */ private static void showTapered(float r, float h) { // ///構造一個圓錐體 tapered = new Tapered(r, h); // /展示圓錐體 System.out.println("輸入的圓錐的底面圓半徑是:" + tapered.getR() + ",高為:" + tapered.getH()); System.out.println("此圓錐的表面積是:" + tapered.caculateArea()); System.out.println("此圓錐的體積是:" + tapered.caculateVolume() + "\n"); } }
附執行截圖。
相關推薦
java原始碼——計算立體圖形的表面積和體積
計算球,圓柱,圓錐的表面積和體積。 利用介面實現。 上程式碼。 Contants.java 常量儲存類 package com.fuxuemingzhu.solidgraphics.contants; /** * <p> * Title: Cont
我的第四個C語言:計算圓柱體的表面積和體積。
問題及程式碼: 問題:計算圓柱體的表面積和體積。 程式碼:#include <stdio.h> #include <stdlib.h> int main() { float r,h,S,V; printf("請輸入圓柱體的半徑\n"
Python計算圓的周長面積和球的表面積和體積
Python計算圓的周長面積和球的表面積和體積 import math r=float(input("請輸入半徑:")) circumference=2*math.pi*r area=math.pi*r*r sarea=4*math.pi*r*r volume=4/3*math.pi*r
zzuli OJ 1017: 表面積和體積
Description 讀入5個整數a, b, c, d 和 e,計算物體的表面積和體積。你可以想像該物體是一個長寬高為a, b, c 的長方體,每一面中央都是凹進去的,而凹進去的深度為
《第五週任務三》求五個長方體的表面積和體積
實驗報告模板1. 本學期的報告均發到csdn部落格。週一上機,週四前要完成本週上機任務併發布博文。 2. 本學期起程式頭部的註釋請自行加入,從本學期起不再統一給出。這是一個程式設計師良好習慣中的一部分,養成這個習慣。這也是展示個人專業品質的一個重要途徑。另外,在程式中需要
Sphere,java,mvc 計算球的體積和表面積
mvc模式介紹 •模型-檢視-控制器(Model-View-Controller,MVC)模式將一個互動式應用程式分成3個元件. –模型:包含核心功能和資料。 –檢視:向用戶顯示資訊。 –控制器:處理使用者輸入。 •檢視和控制器組成了使用者介面。 •變更-傳播機制保證了模型
利用類的繼承計算並輸出圓柱體的體積和表面積
import java.util.*; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); double x,y,r
【java程式】圖形面積和周長計算
package test1; import java.util.Scanner; class circle{ double r,a,b,h; public double zfx(double a) {
Java學習之路---計算圓形的面積和周長
java;scanner;基礎語法題目:計算圓形的面積,其中圓形的半徑是隨意指定。源代碼以及所有的分析思路都如下:import java.util.Scanner; //引入Scanner類 public class TestArea { /** * @param args */ publi
計算各種圖形的周長(介面與多型)---Java
Problem Description 定義介面Shape,定義求周長的方法length()。 定義如下類實現介面Shape的抽象方法: (1)三角形類Triangle (2)長方形類Rectangle (3)圓形類Circle等。 定義測試類ShapeTest,用Shape介面定義
Java虛擬機器(Jvm原始碼):Mac安裝JProfiler和IDE整合
首先介紹一下JProfiler JProfiler是一個專業工具,用於分析正在執行的JVM中發生的事情。當您的生產系統遇到問題時,您可以將其用於開發,質量保證和消防任務。 當然這個軟體是需要收費的,這個需要你自行衡量下。 我的建議是有能力,財力雄厚就買正版,或者使用其他免費的Ja
Apk反編譯工具檢視layout 和java原始碼的工具
首先要準備反編譯三件套,這個在網上應該會有很多 一: 檢視layout 解壓得到apktol.jar 和 apktool.bat 同時把要反編譯的apk也一起存放在當前目錄下 然後開啟控制檯 cmd 定位到當前目錄下
Java原始碼系列(1):Comparable和Comparator的區別
在將Comparable和Comparator區別之前,先補充一個知識點。 先看程式碼: public class Person<T> { private T id; public T getId() { retur
5.Java集合框架剖析 之 Hashset和LinkedHashSet原始碼剖析
1 package java.util; 2 3 import java.io.InvalidObjectException; 4 import sun.misc.SharedSecrets; 5 6 public class HashSet<E> extends
Java之計算長方形的周長和麵積(類和物件)
Problem Description 設計一個長方形類Rect,計算長方形的周長與面積。 成員變數:整型、私有的資料成員length(長)、width(寬); 構造方法如下: (1)Rect(int length) —— 1個整數表示正方形的邊長 (2)Rect(
Java-分別計算兩日期之間的相差的年份和天數
最近實習做CRUD操作時需要分別計算兩日期之間的相差的年份和天數,尤其是計算天數時不需要自己編寫方法來判斷平年、閏年、大小月份的,只需要用到Java API的Date類的方法就行了,真的很方便,省了很多事情。 1.先兩日期之間的相差的年份(學業期限 = 畢業時間
終於有人把雲端計算極速賽車原始碼出售、大資料和人工智慧講明白了!
今天跟大家講講極速賽車原始碼出售QQ2952777280【話仙原始碼論壇】hxforum.com雲端計算、大資料和人工智慧。這三個詞現在非常火,並且它們之間好像互相有關係。 一般談雲端計算的時候會提到大資料、談人工智慧的時候會提大資料、談人工智慧的時候會提雲端計算……感覺三者之間相輔相成又不可分割。 但如
3338-計算各種圖形的周長(介面與多型)-JAVA
計算各種圖形的周長(介面與多型) Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 定義介面Shape,定義求周長的方法length()。 定義如下類實現介面Shape的抽象方法: (1)
《趣學演算法》C++原始碼/java原始碼下載和QQ交流群
《趣學演算法》書中為C++語言實現,圖解多,通俗易懂,小學生,中學生,大學生,已參加工作人員均可輕鬆閱讀。 《趣學演算法》內容摘要及特色:點選開啟連結 《趣學演算法》目錄:點選開啟連結 《趣學演算法》前言:點選開啟連結 《趣學演算法》京東app試讀:點選開啟連結 《趣學演算法》非同步社
【java】計算圖形的周長與面積
package test1; import java.util.Scanner; class circle{ double r,a,b,h; public double zfx(double a) {