当前位置: 首页 > news >正文

JAVA日常练习—习题5

1.机器人类及其子类

设计一个机器人的抽象类,具有质量(double)、名字(String)等属性;具有设置属性值方法和获得并打印属性值的方法,还有一个运动的抽象方法move()。设计电动汽车类和飞行器类,这两个类继承机器人抽象类,实现抽象方法,并在抽象方法中打印输出“我是电动汽车,我在地上跑!”(电动汽车类),以及“我是飞行器,我在天上飞!”(飞行器类)。设计测试类,分别生成电动汽车和飞行器的实例,分别按顺序输入名字和质量,并调用获得名字的方法输出名字,调用抽象方法打印对应信息。
输入描述:分两行输入电动汽车信息和飞行器信息
输出描述:分别输出电动汽车名字、运动信息。

在这里插入图片描述

运行结果:

在这里插入图片描述

源码:

package rotdome;import java.util.Scanner;public class RotDome {public static void main(String[] args) {// TODO Auto-generated method stubScanner in = new Scanner(System.in);String name = in.next();double weight = in.nextDouble();String name1 = in.next();double weight1 = in.nextDouble();Rot car1 = new Car();car1.setName(name);car1.setQuality(weight);System.out.println(car1.toSting());car1.move();Rot plan1 = new Plan();plan1.setName(name1);plan1.setQuality(weight1);System.out.println(plan1.toSting());plan1.move();in.close();}}abstract class Rot {protected double weight;protected String name;public double getQuality() {return weight;}public void setQuality(double quality) {this.weight = quality;}public String getName() {return name;}public void setName(String name) {this.name = name;}abstract public void move();public String toSting() {return "name:" + name + " weight:" + weight + "KG";}
}class Car extends Rot {public void move() {System.out.println("I am automobile,I am running on the ground!");}
}class Plan extends Rot {public void move() {System.out.println("I am aircraft,I am flying in the sky!");}
}

2.创建电源接口及对子类进行充放电

一个电源接口,有一个输入电压的整型常量,值为220;设计两个抽象方法:1)充电方法,addPower();2)放电方法,discharge()。
设计电动汽车类,设置名字(String)、充电电压(double)和放电量(int)属性,实现构造方法、基本的输入输出方法和电源接口,实现充电方法,输出:
name:XXX vehicle, I am charging…
input voltage:XXX charging voltage:XXX”。
实现放电方法,输出:
name:XXX vehicle, I will discharge XXX degrees, I am discharging…

设计电脑类,设置名字(String)、充电功率(int)和放电电压(double)属性,实现构造方法、基本的输入输出方法和电源接口。实现充电方法,输出:
name:XXX notebook, I am charging…
input voltage:XXXV charging power:XXW
实现放电方法,输出:
name:XXX notebook, will discharge.
Discharge voltage:XXXV,I am discharging…
设计主测试类,输入名字、充电电压和放电量),生成电动汽车的实例,依次调用充电方法和放电方法。输入名字、充电功率和放电电压,生成电脑的实例,依次调用充电方法和放电方法。

输入描述
第一行输入电动汽车信息(名字 充电电压 放电量)
第二行输入电脑信息(名字 充电功率 放电电压)
输出描述
分别输出电动汽车、电脑充电、放电信息
在这里插入图片描述

运行结果:

在这里插入图片描述

源码:

package plugDome;import java.util.Scanner;public class PlugDome {public static void main(String[] args) {// TODO Auto-generated method stubScanner in = new Scanner(System.in);//电动汽车类输入String name = in.next();double avoltage = in.nextDouble();int dvoltage = in.nextInt();//电脑类输入String name1 = in.next();int chargingpower = in.nextInt();double dvoltage1 = in.nextDouble();Plug E1 = new ElectricVehicle(name,avoltage,dvoltage);//new一个ElectricVehicle对象E1Plug C1 = new Computer(name1,chargingpower,dvoltage1);//同理E1.addPower();E1.discharge();C1.addPower();C1.discharge();in.close();}}
interface Plug{int Voltage = 220;public void addPower();//充电——抽象方法public void discharge();//放电——抽象方法
}
class ElectricVehicle implements Plug{private String name;private double avoltage;private int dvoltage;public ElectricVehicle(String name,double avoltage,int dvoltage) {this.name = name;this.avoltage = avoltage;this.dvoltage = dvoltage;}public String getName() {return name;}public void setName(String name) {this.name = name;}public double getAvoltage() {return avoltage;}public void setAvoltage(double avoltage) {this.avoltage = avoltage;}public int getDvoltage() {return dvoltage;}public void setDvoltage(int dvoltage) {this.dvoltage = dvoltage;}//实现接口中的抽象方法public void addPower() {System.out.println("name:"+name+" vehicle,I am charging..."+"\n"+"input voltage:"+Voltage+"V charging voltage:"+avoltage+"V");}public void discharge() {System.out.println("name:"+name+" vehicle,I will discharge "+dvoltage+" degrees,I am discharging...");}
}
class Computer implements Plug{private String name;private int chargingpower;private double dvoltage;public Computer(String name,int chargingpower,double dvoltage) {this.name = name;this.chargingpower = chargingpower;this.dvoltage = dvoltage;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getChargingpower() {return chargingpower;}public void setChargingpower(int chargingpower) {this.chargingpower = chargingpower;}public double getDvoltage() {return dvoltage;}public void setDvoltage(double dvoltage) {this.dvoltage = dvoltage;}//实现接口中的抽象方法public void addPower() {System.out.println("name:"+name+" notebook,I am charging..."+"\n"+"input voltage:"+Voltage+"V charging power:"+chargingpower+"W");}public void discharge() {System.out.println("name:"+name+" notebook,I will discharge."+"\n"+"Discharge voltage:"+dvoltage+"V,I am discharging...");}
}

END:我选择了去做,就别试图打断我。

http://www.lryc.cn/news/68816.html

相关文章:

  • nuitka打包python的PyQt5成exe可执行文件
  • 数据(安全)治理面临的挑战和机遇
  • Java后端入职第三天,使用CompletableFuture优化查询接口
  • 卷积神经网络实例
  • LayerZero有何发展潜力?空投热潮和大额融资双重加持
  • 深度学习之构建MPL神经网络——泰坦尼克号乘客的生存分析
  • 一条神奇的sql
  • 数据结构总结3:栈和队列
  • 私有化部署的即时通讯软件:消息、文件安全加密,全面可控
  • 27-Django项目实战(5)
  • 【JVM】1. JVM与Java体系结构
  • 活动回顾|Kyligence x 亚马逊云科技,携手加速零售电商数智化转型
  • 本科毕业生10大高薪专业出炉,IT行业赢麻了
  • 工厂安灯呼叫系统解决方案
  • 微信xr-frame官方案例基础能力之渲染目标
  • 自动控制原理笔记-根轨迹法
  • 准备半个月,面试5分钟不到就凉了,问的实在太····
  • 基础IO(三)
  • 如何用国产DBDesginer软件进行数据库建模设计?
  • 精选 100 种最佳 AI 工具大盘点
  • Recognizing Micro-Expression in Video Clip with Adaptive Key-Frame Mining阅读笔记
  • 【SpringBoot整合RabbitMQ(上)】
  • Linux 设备驱动程序(二)
  • 性价比提升15%,阿里云发布第八代企业级计算实例g8a和性能增强型实例g8ae
  • Unity VR开发教程 OpenXR+XR Interaction Toolkit 番外(一)用 Grip 键, Trigger 键和摇杆控制手部动画
  • H.265/HEVC编码原理及其处理流程的分析
  • 数据结构初阶--链表OJⅡ
  • 离职or苟住?
  • 微服务之以nacos注册中心,以gateway路由转发服务调用实例(第一篇)
  • 主成分分析(PCA)直观理解与数学推导