日韩性视频-久久久蜜桃-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番号网| 情侣在线视频 | 一道本在线观看视频 | 91黄色视屏 | 欧美一级色片 | 欧美性动态图 | 精品国产午夜福利在线观看 | 人人澡澡人人 | 金鱼妻日剧免费观看完整版全集 | 91av网址| 成年人网站免费看 | 香蕉视频99 | 精精国产xxxx视频在线 | 91插插插影库永久免费 | 日本熟妇毛耸耸xxxxxx | 婷婷丁香花五月天 | 老牛嫩草二区三区观影体验 | 国产成人综合精品 | www天堂av| 黄视频网站在线 | 亚洲av毛片基地 | 高清一区二区在线 | 揄拍自拍 | 日韩 欧美 自拍 | 日韩激情片 | 欧美成人做爰大片免费看黄石 | 日韩精选 | 亚洲色图一区二区 | 国产又猛又粗 | 床戏高潮做进去大尺度视频网站 | 午夜刺激视频 | 99久久精品国产成人一区二区 | 色av导航 | 靠逼视频免费网站 | 日韩欧美精品在线播放 | 欧美日本韩国在线 | 蜜桃精品视频在线观看 | 青娱乐导航 | 欧美精品免费播放 | 日韩福利在线播放 | 国产一区二区网站 | 国产九一精品 | 亚洲成a人片77777kkkk | 久久久久成人片免费观看蜜芽 | 欧美日韩精品亚洲精品 | 免费中文视频 | 亚洲欧美自拍一区 | 领导揉我胸亲奶揉下面 | 可以直接看的无码av | 亚洲精品国产精品乱码 | 精品一区二区三区在线免费观看 | 久在线观看视频 | 国产农村熟妇videos | 亚洲爱av| 伊人999 | 日韩中文娱乐网 | www.四虎. | 黄色电影在线视频 | 修仙淫交(高h)h文 | 免费午夜人成电影 | 国产精品青青草 | 自拍偷拍第八页 | 国产免费a视频 | 日韩素人| 日韩久久精品一区二区 | 人妻 丝袜美腿 中文字幕 | 国模小丫大尺度啪啪人体 | 午夜激情福利在线 | 欧美色视频一区二区三区 | 亚洲精品久久久久久久久久久 | 114国产精品久久免费观看 | 国产精选一区 | 天天插天天干 | 日本三级中文字幕 | 自拍第1页| 影音先锋成人网 | 大尺度舌吻呻吟声 | 日韩高清国产一区在线 | 欧美日韩不卡一区二区 | 国产原创91 | 新红楼梦2005锦江版高清在线观看 | 免费在线视频一区 | 九九在线观看高清免费 | 少妇被又大又粗又爽毛片久久黑人 | 99re只有精品| 日本三级大全 | 日本免费高清一区二区 | 久久久888| 拍真实国产伦偷精品 | 69xxx中国| 香蕉久热 |