博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
矩形小程序
阅读量:5842 次
发布时间:2019-06-18

本文共 2560 字,大约阅读时间需要 8 分钟。

按要求编写一个Java应用程序:

(1)编写一个矩形类Rect,包含:

两个属性:矩形的宽width;矩形的高height。

两个构造方法:

1.一个带有两个参数的构造方法,用于将width和height属性初化;

2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。

两个方法:

求矩形面积的方法area()

求矩形周长的方法perimeter()

(2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用

矩形的左上角坐标来标识,包含:

添加两个属性:矩形左上角坐标startX和startY。

两个构造方法:

带4个参数的构造方法,用于对startX、startY、width和height属性初始化;

不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;

添加一个方法:

判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。

 提示:点在矩形类是指满足条件:x>=startX&&x<=(startX+width)&&y<startY&&y>=(startY-height)

(3)编写PlainRect类的测试程序创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;计算并打印输出矩形的面积和周长;判断点(25.5,13)是否在矩形内,并打印输出相关信息。

package ss;//矩形public class Rect {    private int height=10;    private int width=20;    public int getHeight() {        return height;    }    public void setHeight(int height) {        this.height = height;    }    public int getWidth() {        return width;    }    public void setWidth(int width) {        this.width = width;    }    //有参的构造方法    public Rect(int height, int width) {        super();        this.height = height;        this.width = width;    }    //无参的构造方法    public Rect() {        super();//        this.height = 10;//        this.width = 20;    }    public int area()    {        return this.height*this.width;    }    //周长    public int perimeter()    {        return (this.height+this.width)*2;    }}package ss;public class PlainRect extends Rect {    private int startX;    private int startY;    public int getStartX() {        return startX;    }    public void setStartX(int startX) {        this.startX = startX;    }    public int getStartY() {        return startY;    }    public void setStartY(int startY) {        this.startY = startY;    }    //带参的构造方法    public PlainRect(int height, int width, int startX, int startY) {        super(height, width);        this.startX = startX;        this.startY = startY;    }    //无参    public PlainRect() {        super(0,0);//        this(0,0,0,0,) //效果一样    }    /**     * 判断点是否在矩形内     * @param x 点x的坐标     * @param y 点y的坐标     * @return 判断是否在矩形内     */    public boolean isInside(double x,double y)    {        return x>=startX&&x<=(startX+getWidth())&&y<=startY&&y>=(startY+getHeight());    }    }package ss;public class TestPlainRect {    public static void main(String[] args) {        // TODO 自动生成的方法存根        PlainRect pr=new PlainRect(10,20,10,10);        System.out.println("矩形的面积"+pr.area());        System.out.println("矩形的周长"+pr.perimeter());        System.out.println("点是否在矩形内部"+pr.isInside(25.5, 13));    }}

转载于:https://www.cnblogs.com/wangguoning/p/5891625.html

你可能感兴趣的文章
一键安装Gitlab后的备份、迁移与恢复
查看>>
因为本人工作繁忙,精力有限,本博客停止更新。有兴趣的博友可以关注我在CSDN上的主博客...
查看>>
SQL server查看触发器是否被禁用
查看>>
跟随我在oracle学习php(8)
查看>>
UVA-10212 The Last Non-zero Digit. 分解质因子+容斥定理
查看>>
求两个集合的交集,并集,差集
查看>>
Kotlin的语法糖(一)基础篇
查看>>
OkHttp源码分析
查看>>
NS_OPTIONS枚举的用法
查看>>
QAQ高精度模板笔记√
查看>>
【Android笔记】入门篇02:全屏设置和禁止横屏竖屏切换
查看>>
Kubernetes的本质
查看>>
亚信安全参加第六届全国等保技术大会 态势感知助力“等保2.0”落地
查看>>
【设计模式系列】--抽象工厂
查看>>
JqueryValidate 动态添加验证
查看>>
大数据公司Palantir融得7亿美元 曾追踪拉登
查看>>
建立备份策略的重要性
查看>>
小白用户如何轻松上云 -我的轻量应用服务器探索记
查看>>
发力IoT领域 Marvell注重生态系统发展
查看>>
20个问题揭穿冒牌数据科学家
查看>>