Bʟᴇssɪɴɢ .40 2024-09-29 19:17 采纳率: 81%
浏览 1
已采纳

java基类测试类楼房写字楼

请按照如下要求编写程序,能够处理房屋、住宅、写字楼的信息,并进行测试。分析楼房、住宅、写字楼之间的关系,分别定义类。要求如下:
(1)楼房是基类,用于描述一座楼房的层数layers、总平方米数area;
(2)住宅除了具有楼房的属性外,还有卧室数bedRooms、浴室数bathRooms,使用父类构造函数设置楼房的属性。
(3)写字楼除了具有楼房的属性外,还有房间数rooms和灭火器的数量extinguishers,使用父类构造函数设置楼房的属性。
(4)测试类中定义住宅类的对象和写字楼类的
对象,设置信息并输出对象的信息。
//测试类
public class BuildingTest {
public static void main(String】] args){
Building build = new Building(5, 5000);//楼
房对象
build. show0;
House house = new
House(6,6000,120,60);//住宅对象
house. show0;
OfficeBuilding office = new
OfficeBuilding(10, 15000, 50, 200);//写字楼对象
office.show(;
f
(5)预期输出:
层数:5,总面积:5000
f

  • 写回答

1条回答 默认 最新

  • 一轮明月照丘壑 2024-09-29 19:19
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    要解决这个问题,首先我们需要创建一个Building类作为楼房的基类,它将包含楼层数(int layers)和总建筑面积(int area)。接下来,我们创建两个子类HouseOfficeBuilding,每个子类都将继承自Building类,并添加额外的属性如卧室数(int bedRooms)、浴室数(int bathRooms)以及房间数(int rooms)。此外,每个子类还将包含相应的构造函数以初始化其属性。

    // Building 类
    class Building {
        int layers;
        int area;
    
        // 构造函数
        public Building(int layers, int area) {
            this.layers = layers;
            this.area = area;
        }
    
        // 属性展示方法
        public void show() {
            System.out.println("层数:" + layers);
            System.out.println("总面积:" + area);
        }
    }
    
    // House 子类
    class House extends Building {
        int bedRooms;
        int bathRooms;
        int rooms;
    
        // 构造函数
        public House(int layers, int area, int bedRooms, int bathRooms) {
            super(layers, area);
            this.bedRooms = bedRooms;
            this.bathRooms = bathRooms;
        }
    
        // 属性展示方法
        public void show() {
            super.show();
            System.out.println("卧室数:" + bedRooms);
            System.out.println("浴室数:" + bathRooms);
            System.out.println("房间数:" + rooms);
        }
    }
    
    // OfficeBuilding 子类
    class OfficeBuilding extends Building {
        int extinguishers;
    
        // 构造函数
        public OfficeBuilding(int layers, int area, int rooms, int extinguishers) {
            super(layers, area);
            this.extinguishers = extinguishers;
        }
    
        // 属性展示方法
        public void show() {
            super.show();
            System.out.println("房间数:" + rooms);
            System.out.println("灭火器数量:" + extinguishers);
        }
    }
    

    现在,我们可以创建一些实例化这些类的对象,并调用它们的方法来显示相关信息。

    // 创建实例
    Building building = new Building(5, 5000);
    building.show();
    
    House house = new House(6, 6000, 120, 60);
    house.show();
    
    OfficeBuilding office = new OfficeBuilding(10, 15000, 50, 200);
    office.show();
    

    这样我们就成功地创建了三个不同的类,分别表示楼房、住宅和写字楼,每个类都包含了与各自类别相关的属性和方法。通过这种方式,我们可以更清晰地理解它们之间的关系。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 9月29日
  • 创建了问题 9月29日

悬赏问题

  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?
  • ¥15 nasm x86 变量归零
  • ¥65 Tree 树形控件实现单选功能,可以使用element也可以手写一个,实现全选为全选状态
  • ¥60 寻抓云闪付tn组成网页付款链接
  • ¥16 寻字节跳动内部人员帮推简历