package zhongqiuzuoye;    //自己写的方法

public class Rect {

    public double width;
public double height; Rect(double width,double height) //带有两个参数的构造方法,用于将width和height属性初化;
{
this.width=width;
this.height=height;
} Rect() //不带参数的构造方法,将矩形初始化为宽和高都为10。
{
width=10;
height=10;
} double area() //求矩形面积的方法
{
System.out.println("矩形的面积为:"+width*height);
return width*height;
}
double perimeter() //求矩形周长的方法
{
System.out.println("矩形的周长为:"+2*(width+height));
return 2*(width+height);
}
}
package zhongqiuzuoye;        //上课修改后的方法
public class Rect { private double width; private double height; public double getWidth() { return width; } public void setWidth(double width) { this.width = width; } public double getHeight() { return height; } public void setHeight(double height) { this.height = height; } Rect(double width,double height) //带有两个参数的构造方法,用于将width和height属性初化;  { this.width=width; this.height=height; } Rect() //不带参数的构造方法,将矩形初始化为宽和高都为10。  { this.width=10; this.height=10; } double area() //求矩形面积的方法  { System.out.println("矩形的面积为:"+width*height); return width*height; } double perimeter() //求矩形周长的方法  { System.out.println("矩形的周长为:"+2*(width+height)); return 2*(width+height); } }

 
package zhongqiuzuoye;

public class PlainRect extends Rect{

    double startX;
double startY; PlainRect(double startX,double startY,double width,double height) //带4个参数的构造方法,用于对startX、startY、width和height属性初始化; {
this.startX=startX;
this.startY=startY;
this.width=width;
this.height=height;
}
PlainRect() //不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;
{
startX=0;
startY=0;
width=0;
height=0;
}
boolean isInside(double x,double y) //判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。
{
if(x>=startX&&x<=(startX+width)&&y<startY&&y>=(startY-height))
{System.out.println("点在矩形内");
return true;}
else
{System.out.println("点不在矩形内");
return false;}
}
package zhongqiuzuoye;       //上课修改后的方法
public class PlainRect extends Rect{ private double startX; private double startY; public double getStartX() { return startX; } public void setStartX(double startX) { this.startX = startX; } public double getStartY() { return startY; } public void setStartY(double startY) { this.startY = startY; } PlainRect(double startX,double startY,double width,double height) //带4个参数的构造方法,用于对startX、startY、width和height属性初始化;  { super(); this.startX=startX; this.startY=startY; } PlainRect() //不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;  { this(0,0,0,0); } /*** * 判断点是否在矩形内 * @param x 点的X坐标 * @param y 点的Y坐标 * @return */ boolean isInside(double x,double y) //判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。  { if(x>=startX&&x<=(startX+getWidth())&&y<startY&&y>=(startY-getHeight())) {System.out.println("点在矩形内"); return true;} else {System.out.println("点不在矩形内"); return false;} } }

 
package zhongqiuzuoye;

public class TestPlainRect {

    public static void main(String[] args) {

        PlainRect p1=new PlainRect(10,10,20,10);
p1.isInside(25.5, 13);
p1.area();
p1.perimeter(); } }

25.按要求编写一个Java应用程序: (1)编写一个矩形类Rect,包含: 两个属性:矩形的宽width;矩形的高height。 两个构造方法: 1.一个带有两个参数的构造方法,用于将width和height属性初化; 2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。 两个方法: 求矩形面积的方法area() 求矩形周长的方法perimeter() (2)通过继承Rect类编写一个具有的更多相关文章

  1. Java基础-接口中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产。请编写一个java应用程序描述上述的体制现象。 要求如下: (1)该应用程序中有一个“党中央”接口:CentralPartyCommittee,该接口中 有个“坚持党的领导”方法:void partyLeader() (2)该应用程序中有一个“国务院”抽象类:StateCouncil,

    36.中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产.请编写一个java应用程序描述上述的体制现象. 要求如下: (1)该应用程序中有一个“党中央”接口 ...

  2. Java基础-继承-编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数 loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个 类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功 能。

    #29.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight.小车类Car是Vehicle的子类,其中包含的属性有载人数 loader.卡车类T ...

  3. IntelliJ IDEA 运行你的第一个Java应用程序 idea运行main方法

    IntelliJ IDEA 运行你的第一个Java应用程序创建项目让我们创建一个简单的Java Hello World项目. 单击创建新的项目. 打开新建项目向导.你应该注意的主要是项目的SDK.SD ...

  4. java基础,继承类题目:编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类 E

    21.编写一个Java应用程序,该程序包括3个类:Monkey类.People类和主类 E.要求: (1) Monkey类中有个构造方法:Monkey (String s),并且有个public vo ...

  5. 一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?

    一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?带着这个疑惑,动手建几个测试类, 揭开心中的疑惑.以下是解开疑惑过程: package test;/** * 一个.java源文件中可以 ...

  6. IntelliJ IDEA 运行你的第一个Java应用程序

    IntelliJ IDEA 运行你的第一个Java应用程序创建项目让我们创建一个简单的Java Hello World项目. 单击创建新的项目. 打开新建项目向导.你应该注意的主要是项目的SDK.SD ...

  7. 编写一个JAVA小程序取得IP地址

    在TCP/IP 互联网时,经常会需要查询自己主机的IP地址和www服务器的IP地址.虽然,我们可以使用IPCONFIG 和PING 进行IP地址查询,但是如果在应用程序或APPLET中使用此命令会破坏 ...

  8. 一个Java递归程序

    先来没事搜了一些面试题来做,其中一道:输入一个整数,求这个整数中每位数字相加的和? 思考:1.如何或得每一位数:假如是1234,   1234%10=4,得到个位:(1234/10)%10=3得到十位 ...

  9. 07_数据库创建,添加c3p0操作所需的jar包,编写c3p0-config.xml文件,编写User.java,编写jdbcUtils.java实现操作数据库的模板工具类,UserDao编写,Dao

     1  创建day14数据库,创建user.sql表: A 创建数据库 day14 B 创建数据表 users create table users ( id int primary keyaut ...

随机推荐

  1. Linux命令之route - 显示和操作IP路由表

    转自:  http://codingstandards.iteye.com/blog/1125312 用途说明 route命令用于显示和操作IP路由表(show / manipulate the IP ...

  2. vim指令常用

    慢慢尝试使用vim,不断学习使用新的快捷键,将常用快捷键但经常容易忘的写下来, 1. 复制黏贴 命令行模式下按住v选中,y表示复制,d表示剪切,p为复制.

  3. BZOJ2888 资源运输(LCT启发式合并)

    这道题目太神啦! 我们考虑他的每一次合并操作,为了维护两棵树合并后树的重心,我们只好一个一个的把节点加进去.那么这样一来看上去似乎就是一次操作O(nlogn),但是我们拥有数据结构的合并利器--启发式 ...

  4. 虚拟机安装Ubuntu到U盘

    这篇经验中特指系统安装到U盘,系统在U盘上,不是双系统,不会改变源系统的设置.只需在启动的时候选择启动路径,就可以从U盘启动你的系统.本文仅仅Ubuntu系统,举一反三可以按照此方法安装各种各样的系统 ...

  5. Linux Ubuntu12.04下安装OpenCv2.4.10

    参考 http://blog.sina.com.cn/s/blog_53b0956801010lfu.html 捣鼓了一个晚上了,OpenCv还没装好,本来以为看个类似的比如Ubuntu安装OpenC ...

  6. 工作当中实际运用(2)——js原生实现全选/反选

    老规矩 直接上代码  代码中详细注释: function checkAll(){ var alls=document.getElementById('tab-stp').getElementsByTa ...

  7. MVC 伪静态

    1.config <system.webServer> <validation validateIntegratedModeConfiguration="false&quo ...

  8. Jexus针对Asp.net core应用程序的六大不可替代的优势

    1,配置简便:在Jexus上,Asp.net core只是Jexus上的一个"站点",因此,只需在Jexus上配置这个站点就行,无需其它配置: 2,操作统一:Jexus停止这个站点 ...

  9. 【AspNetCore】【WebApi】扩展Webapi中的RouteConstraint中,让DateTime类型,支持时间格式化(DateTimeFormat)

    扩展Webapi中的RouteConstraint中,让DateTime类型,支持时间格式化(DateTimeFormat) 一.背景 大家在使用WebApi时,会用到DateTime为参数,类似于这 ...

  10. Java多线程10:ThreadLocal的作用及使用

    ThreadLocal的作用 从上一篇对于ThreadLocal的分析来看,可以得出结论:ThreadLocal不是用来解决共享对象的多线程访问问题的,通过ThreadLocal的set()方法设置到 ...