java语言程序设计第十章十二题参考答案

更新时间:2023-06-19 21:37:07 阅读: 评论:0

10.12 定义Myrectangle类,包含:
更新浏览器两个名为x和y的double 型数据域,表明矩形的中心点,这两个数据域都带有get和t方法(假设这个矩形的边和x和y轴平行);
带get和t方法的数据域width和height.
一个无参构造方法,,该方法创建一个(x,y)的值为(0,0)且width和height的默认值为1.
资不抵债一个构造方法,创建带制定的x,y,width,height的矩形。
方法getArea()返回矩形的面积。
方法getPrimeter()返回矩形的周长。走出梨花村
如果给定的点(x,y)在矩形内,那么方法contains(double x,double y)返回true.
如果给定的矩形在这个矩形内,那么方法contains(Myrectangle2D r)返回true。
如果给定的矩形和这个矩形重叠,那么方法overlaps(Myrectangle2D r)返回true.
画出该类的UML图,实现这个类。
代码为:
class MyRectangle2D{
    double x=0,y=0;//x,y表示矩形中心点
    double width=1,height=1;
public double getX(){
      return x;
}
public double getY(){
    return y;
}
public void tX(double x){
    this.x=x;
}
public void tY(double y){
    this.y=y;
}
public double getWidth(){
    return width;
}广东煲仔饭的做法
public void tWidth(double width){
    this.width=width;
}
public double getHeight(){
    return height;
   
}太原之战
public void tHeight(double height){
    this.height=height;
}
MyRectangle2D(double x,double y,double width,double height){
    this.x=x;
    this.y=y;
    this.width=width;
    this.height=height;
}
public double getArea(){
    return width*height;
}
public double getPrimeter(){
    return 2*(width+height);
}
喝可乐会变黑吗public boolean contains(double x,double y){
    return x<width&&y<height?true:fal;
}
public boolean contains(MyRectangle2D r) {   
    return contains(r.x - r.width / 2, r.y + r.height / 2) &&
      contains(r.x - r.width / 2, r.y - r.height / 2) &&
      contains(r.x + r.width / 2, r.y + r.height / 2) &&
      contains(r.x + r.width / 2, r.y - r.height / 2);
轻度痤疮图片  }//判断包含的条件
public boolean overlaps(MyRectangle2D r) {   
    return Math.abs(this.x - r.x) <= (this.width + r.width) / 2 &&
      Math.abs(this.y - r.y) <= (this.height + r.height) / 2;
  }                                    //判断重叠的条件
public static void main(String[] args){
    MyRectangle2D r1=new MyRectangle2D(2,2,5.5,4.9);
    System.out.println("面积为:"+r1.getArea()+"  周长为:"+r1.getPrimeter());
    System.out.println("点(3,3)在矩形r1内吗(是为true,不是为否)? "+r1.contains(3, 3));红薯面窝窝头
    System.out.println("给定的矩形在矩形r1内吗(是为true,不是为否)? "+r1.contains(new MyRectangle2D(4,5,10.5,3.2)));
    System.out.println("给定的矩形和矩形r1重叠吗(是为true,不是为否)? " +r1.overlaps(new MyRectangle2D(3,5,2.3,5.4)));
  }
}

本文发布于:2023-06-19 21:37:07,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/993762.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:矩形   方法   重叠   返回   煲仔饭
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图