JAVA日常练习—习题5

news2024/12/27 10:14:24

1.机器人类及其子类

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

在这里插入图片描述

运行结果:

在这里插入图片描述

源码:

package rotdome;

import java.util.Scanner;

public class RotDome {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner 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 stub
		Scanner 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对象E1
		Plug C1 = new Computer(name1,chargingpower,dvoltage1);//new一个Computer对象
		
		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, will discharge."+"\n"+"Discharge voltage:"+dvoltage
							+"V,I am discharging...");
	}
}

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/542394.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【STM32G431RBTx】备战蓝桥杯嵌入式→决赛试题→第十届

文章目录 前言一、题目二、模块初始化三、代码实现interrupt.h:interrupt.c:main.h:main.c: 四、完成效果五、总结 前言 无 一、题目 二、模块初始化 1.LCD这里不用配置,直接使用提供的资源包就行 2.双ADC:开启双ADCsingle-ended 3.LED:开启PC8-15,PD2输出模式就…

chatgpt赋能Python-python3_6安装keras

在Ubuntu 16.04上安装Keras Keras是一个非常流行的Python深度学习库,它可以让你高效地构建和训练深度神经网络。在本指南中,我们将介绍如何在Ubuntu 16.04上安装Keras,并建立一个简单的基于CNN的图像分类器。 准备工作 在安装Keras之前&am…

MySQL 基础篇 1.1 执行一条SQL语句会发生什么

1. MySQL架构一共分为两层 server 和 存储引擎层(一般为Innodb引擎) 主要执行流程都在server层:连接器,查询缓存,解析SQL(解析器),执行SQL(预处理器,优化器&a…

2023年ES的使用总结

1.Elasticsearch 非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到需要的内容 什么是elasticsearch 一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控 什么是elastic stack 是以elasticsearch为核心的技术栈&#xf…

运算符重载函数作为类的成员函数——有理数的约分

目录 一、题目 二、代码 三、算法分析 (一)数学表达式 (二) 代码实现 一)运算符重载函数 二)优化函数(实现有理数约分) 一、题目 通过运算符重载为类的成员函数来实现两个有…

【云计算与虚拟化】第二章 实验一 VMware Workstation的使用

实验一 vmware workstation的使用 安装Windows Server 2012 R2虚拟机,并激活(计算机命名为:学号姓名拼音的首字母) 2.在Windows Server 2012 R2的虚拟机中安装VMTools 3.关机创建快照(快照命名为:学号姓名…

OMG Data Distribution Service(DDS)规范解读-Part4

目录 2.4 Listeners, Conditions, and Wait-sets2.4.1 Communication Status2.4.2 Changes in Status2.4.2.1 Plain communication statuses2.4.2.2 Read Communication Statuses 2.2.4.3 Access through Listeners2.2.4.3.1 Listener Access to Plain Communication Status2.2…

I2C总线

基于linux-3.14.16 一、注册I2C总线 以上代码即完成了i2c总线的注册,并且添加了一个i2c驱动dummy_driver 二、注册适配器 1、平台总线匹配 设备树有i2c1设备 平台总线匹配后执行probe 2、执行probe 获取中断号 获取地址资源并映射 填充i2c_adapter&#…

chatgpt赋能Python-python3_7如何安装matplotlib

Python3.7如何安装Matplotlib Matplotlib是一个Python的绘图库,可以帮助用户制作2D和3D图表和图形。它利用了NumPy、SciPy和其他Python包,具有出色的兼容性和可视化效果,广泛应用于数据分析、科学计算和工程领域。在本篇文章中,我…

chatgpt赋能Python-python2转3

Python2转3的最终结论 Python是一种流行的编程语言,但随着Python 2的维护结束,许多开发者正在考虑将他们的代码从Python 2升级到Python 3。这篇文章将介绍如何在搜索引擎优化(SEO)方面实现Python 2转3,并讨论为什么这…

页面样式问题收集及解决方案导航

1、el-table表头文字换行https://blog.csdn.net/qq_44747461/article/details/105976042 2、element-ui动态更改el-table某个单元格字体颜色:https://blog.csdn.net/agua001/article/details/107960393 Element UI 表格 el-table-column根据不同值显示不同颜色&…

ChatGPT工作提效之在程序开发中的巧劲和指令(创建MySQL语句、PHP语句、Javascript用法、python的交互)

ChatGPT工作提效之程序开发中的巧劲 前言一、创建MySQL数据表1.创建指令2.交互评价 二、PHP交互语句1.创建指令2.交互评价 三、javascript的交互用法1.创建指令2.交互评价 四、python的交互1.创建指令2.交互评价 总结 前言 ChatGPT是一个基于GPT模型训练的聊天机器人&#xff…

【Maven从入门到入土】

文章目录 1.Maven1.1 初识Maven依赖管理:统一项目结构 :项目构建 : 1.2 Maven概述1.2.1 Maven模型1.2.2 Maven仓库1.2.3 Maven安装 1.3 IDEA集成Maven1.3.1 配置Maven环境1.3.1.1 当前工程设置1.3.1.2 全局设置 1.3.2 Maven项目1.3.2.1 创建Maven项目1.3.2.2 POM配置…

代码随想录训练营Day37| 738.单调递增的数字 968.监控二叉树 总结

目录 学习目标 学习内容 738.单调递增的数字 968.监控二叉树 总结 学习目标 738.单调递增的数字 968.监控二叉树 总结 学习内容 738.单调递增的数字 738. 单调递增的数字 - 力扣(LeetCode)https://leetcode.cn/problems/monotone-increasing-di…

【云计算与虚拟化】第二章 实验二 Vmware Workstation 15的使用

实验二 Vmware Workstation 15的使用 在上一实验的基础上,将两台虚拟机调节到在桥接模式下,配置相应的网络参数,实现虚拟机1和2能相互通信,虚拟机1和2能够ping通外网,虚拟机1和2能ping通物理机。 (截取…

GE SR469-P5-HI-A20 带有5A相CT次级线圈的标准装置

SR469-P5-HI-A20提供四路4-20 mA模拟输出。该装置已通过CE认证。这是一个带有5A相CT次级线圈的标准装置。该装置的控制电源额定为90-300伏直流电,70-265伏交流电,48-62赫兹。 制造商美国通用电气公司,通用工业系统电压供应交流电:48-62赫兹时…

【云计算与虚拟化】第四章 实验一 在Windows 系统部署vCenter Server

实验一 在Windows 系统部署vCenter Server 1.部署两台ESXi6.0 虚拟主机,其余参数可以参考实验IP拓扑 2.在Windows Server 2012 R2中部署Storge服务器,该服务器名字为:姓名的拼音的首字母1,且要实现以下三个功能: (1)AD域控制…

【5.15】一、软件测试基础—软件概述

目录 1.1 软件概述 1.1.1 软件生命周期 1.1.2 软件开发模型 1.1.3 软件质量概述 1.1 软件概述 软件是相对于硬件而言的,它是一系列按照特定顺序组织的计算机数据和指令的集合。 软件的生命周期:软件从“出生” 到 “消亡” 的过程。 1.1.1 软件生…

超详细!Xmind的学习

哈喽,大家好。最近有小伙伴问使用xmind思维导图怎么快速上手,今天便给各位小伙伴出了这一期快速上手教程。思维导图的上手其实都是很简单的,只要知道基本功能的使用,基本上半天就能学会,一天就能熟练。 一、学习准备 …

【SpringBoot整合JWT】

目录 一、什么是JWT 二、JWT能做什么 三、为什么是JWT 1、基于传统的Session认证 2、基于JWT认证 四、JWT的结构是什么 五、JWT的第一个程序 六、封装JWT工具类 七、整合SpringBoot使用 一、什么是JWT JSON Web Token (JWT) is an open standard ([RFC 7519](http…