日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java黑皮书课后题第11章:11.1(Triangle类)设计一个名为Triangle的类来继承GeometricObject类。该类包括:

發布時間:2024/8/1 java 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java黑皮书课后题第11章:11.1(Triangle类)设计一个名为Triangle的类来继承GeometricObject类。该类包括: 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

畫出Triangle類和GeometricObject類的UML圖,并實現這些類。編寫一個測試程序,提示用戶輸入三角形的三條邊、顏色以及一個boolean值表明該三角形是否填充。程序需要根據輸入創建一個具有指定邊的三角形,并設置color和filled屬性。程序需要顯示面積、周長、顏色以及表明是否填充的真or假值

  • Triangle類包括
  • GeometricObject類在哪兒
  • UML圖
  • 代碼
    • Test01.java:本題測試程序
    • Test01_GeometricObject.java:GeometricObject構造類
    • Test01_Triangle.java:Triangle構造類

Triangle類包括

三個名為side1 side2 side3的double類型數據域表示三角形三條邊,默認值為1.0
一個無參構造方法,創建一個默認的三角形
一個創建指定side1 side2 side3值的三角形的構造方法
所有三個數據域的訪問器方法
一個名為getArea()的方法返回該三角形面積

計算三角形面積公式詳見2.19:https://blog.csdn.net/weixin_46356698/article/details/119791257
這是我從2.19直接復制來的公式:
s = (side1 + side2 + side3) / 2
area = Math.pow(s*(s-side1)(s-side2)(s-side3), 0.5)

getPerimeter方法返回三角形周長
toString()方法返回該三角形的字符串描述:

return "Triangle: side1 = " + side1 + " side2 = " + side2 + " side = " + side3;

GeometricObject類在哪兒

因為這道題沒有給出這個類具體代碼,需要從課本里翻出來
P355頁有GeometricObject類的UML圖
需要對著UML圖寫出來具體代碼

UML圖

代碼

Test01.java:本題測試程序

import java.util.Arrays; import java.util.Scanner;public class Test01 {// 測試程序public static void main(String[] args) {// 提示用戶輸入三條邊、顏色、是否填充的boolean值Scanner input = new Scanner(System.in);System.out.print("輸入三條邊的值:");int side1 = input.nextInt(), side2 = input.nextInt(), side3 = input.nextInt();System.out.print("輸入顏色:");String color = input.next();System.out.print("是否填充(boolean值):");boolean filled = input.nextBoolean();// 設置以上屬性,注意判斷三條邊能否創建一個三角形且值全部大于0【隱藏條件】if ( !isTriangle(side1, side2, side3) ){System.out.println("輸入的三條邊不符合要求");System.exit(0);}/**方法1:直接new子類【推薦使用】*/Test01_Triangle myTri = new Test01_Triangle(side1, side2, side3);myTri.setColor(color);myTri.setFilled(filled);// 顯示面積、周長、顏色、是否填充System.out.println(myTri.getArea() + "\n" + myTri.getPerimeter() + "\n"+ myTri.getColor() + "\n" + myTri.isFilled());/**方法2:多態【不推薦使用,但可以深化語法,了解】*/Test01_GeometricObject myGO = new Test01_Triangle(side1, side2, side3);myGO.setColor(color);myGO.setFilled(filled);//如何顯示面積和周長:將myGO強轉為Test01_Triangle/**System.out.println(((Test01_Triangle) myGO).getArea() + "\n" + ((Test01_Triangle) myGO).getPerimeter() + "\n"+ myTri.getColor() + "\n" + myTri.isFilled());*/}public static boolean isTriangle(double s1, double s2, double s3){// 將三條邊傳入數組,使用Arrays類的sort方法排序// 最短的兩條邊長度小于第三條邊double[] arr = {s1, s2, s3};Arrays.sort(arr);boolean re1 = arr[0] + arr[1] > arr[2];boolean re2 = (s1 > 0) && (s2 > 0) && (s3 > 0);return re1 && re2;} }

Test01_GeometricObject.java:GeometricObject構造類

import java.util.Arrays; import java.util.Date; import java.util.Scanner;public class Test01_GeometricObject {// 三個數據域String color;boolean filled;Date dateCreated;// 無參構造方法public Test01_GeometricObject(){dateCreated = new Date();}// 有參構造方法public Test01_GeometricObject(String color, boolean filled){this.color = color;this.filled = filled;dateCreated = new Date();}// getter and setter 顏色值public String getColor() {return color;}public void setColor(String color) {this.color = color;}// getter and setter filledpublic boolean isFilled() {return filled;}public void setFilled(boolean filled) {this.filled = filled;}// 獲取DateCreatedpublic Date getDateCreated() {return dateCreated;}// toString@Overridepublic String toString() {return "Test01_GeometricObject{" +"color='" + color + '\'' +", filled=" + filled +", dateCreated=" + dateCreated +'}';} }

Test01_Triangle.java:Triangle構造類

public class Test01_Triangle extends Test01_GeometricObject{// 3個數據域public double side1 = 1;public double side2 = 1;public double side3 = 1;// 無參構造public Test01_Triangle(){}// 有參構造public Test01_Triangle(double side1, double side2, double side3){this.side1 = side1;this.side2 = side2;this.side3 = side3;}// 訪問器方法public double getSide1() {return side1;}public double getSide2() {return side2;}public double getSide3() {return side3;}// 返回三角形面積的getArea()public double getArea(){double s = (side1 + side2 + side3) / 2;return Math.pow(s * (s - side1) * (s - side2) * (s - side3), 0.5);}// 返回三角形周長public double getPerimeter(){return side1 + side2 + side3;}// 返回該三角形的字符串描述@Overridepublic String toString(){return "Triangle: side1 = " + side1 + " side2 = " + side2 + " side = " + side3;} }

總結

以上是生活随笔為你收集整理的Java黑皮书课后题第11章:11.1(Triangle类)设计一个名为Triangle的类来继承GeometricObject类。该类包括:的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产伦精品一区二区三区在线观看 | 无码国产精品一区二区高潮 | 黄色三级小视频 | 青青草国产| 黄色片不卡 | 麻豆成人在线 | 男人视频网 | 一级大片免费观看 | 日韩精品在线一区二区 | 国产免费福利视频 | 亚洲一区二区免费 | 在线中文字幕播放 | 黄色欧美在线观看 | 麻豆亚洲av熟女国产一区二 | 免费一二区| 精品动漫一区二区三区 | 99er在线| 精品久久久久久久免费人妻 | 鲁丝一区二区三区 | 尤果网福利视频在线观看 | 国产色区 | 雨宫琴音一区二区三区 | 中文字幕一区二区三区免费视频 | 亚洲欧美视频一区 | 亚洲高清免费观看 | 办公室大战高跟丝袜秘书经理ol | 精品视频免费在线 | 夜夜精品视频 | a级在线观看网站 | 亚洲人成网站999久久久综合 | xxx日韩 | 一区二区三区在线免费播放 | 中文精品久久久久人妻不卡 | 成人午夜视频在线观看 | 精品国产aⅴ | 中文字幕一区二区三区手机版 | 国产美女网 | 嫩草影院在线视频 | 黄色一级片视频 | 日本啪啪动态图 | 大地资源二中文在线影视免费观看 | 九九色视频 | 精品国产鲁一鲁一区二区张丽 | 免费的黄色的网站 | 国产福利视频 | 亚洲av无码一区二区三区在线播放 | 另类视频一区 | 91视频社区 | 国产一区二区在线免费 | 黄色av网站在线 | 波多野结衣高清电影 | 91欧美激情一区二区三区成人 | 免费小视频在线观看 | 亚洲成人91 | 欧美色一区二区三区在线观看 | 一级全黄裸体片 | 亚洲成a人片77777精品 | 亚洲视频在线看 | 色婷婷av久久久久久久 | 亚洲自拍激情 | 一节黄色片 | 国产黄色一区 | 国产综合第一页 | 又黄又爽又刺激的视频 | 国产伊人久久 | 国产精品1 | 日韩啪啪片 | 日韩久久在线 | av青青| 欧美伊人久久 | 欧美午夜精品久久久久久孕妇 | 少妇高潮伦 | 天天干天天爽天天操 | 在线视频免费观看 | 理论片毛片| 国产亚洲一区二区三区 | 亚洲精品国产精品国 | 久久精品国产电影 | 国产精品av在线 | 成人精品一区二区三区在线 | 日韩欧美在线一区 | 九九九九热 | 91精品国产入口 | 日本波多野结衣在线 | 黄色片链接 | 一二三区在线播放 | 95久久 | 日美女逼逼 | 国产精品污www一区二区三区 | 尼姑福利影院 | 国产精品成人一区二区网站软件 | 国产理论视频在线观看 | 五月婷婷中文字幕 | 免费一区二区视频 | 阿v天堂2014 这里有精品 | 另类天堂av | 天天干视频 | 黄色大片子| 国产精品极品 |