1

编写一个应用程序,模拟机动车的加速和减速功能。机动车类Vehicle的UML图如下,其中speedUp()方法实现加速功能,速度上限为240 km/h;speedDown()实现降速功能,下限为0 km/h。

【试题输入输出】

编写测试程序,创建Vehicle对象,输入初始速度,分别调用speedUp()和speedDown()方法对车辆进行加速和减速,按照如下样例输出结果。

  

import java.util.Scanner;

public class TestVehicle {

public static void main(String[] args) {
Scanner input=new Scanner(System.in);
Vehicle vehicle=new Vehicle(0);
vehicle.setSpeed(input.nextFloat());
float a=(input.nextFloat());
float b=(input.nextFloat());
System.out.println("初始速度是"+vehicle.getSpeed());
vehicle.speedUp(a);
System.out.println("加速"+a+"后的速度是"+vehicle.getSpeed());
vehicle.speedDown(b);
System.out.println("降速"+b+"后的速度是"+vehicle.getSpeed());
}

}
class Vehicle{
private float speed;
public Vehicle() {}
public Vehicle(float speed) {
this.speed=speed;
}
public float getSpeed() {
return speed;
}
public void setSpeed(float speed) {
this.speed = speed;
}
public void speedUp(float speedUp){
if((speed+speedUp)>=240)
speed=240;
else
speed+=speedUp;

}
public void speedDown(float speedDown) {
if((speed-speedDown)<0)
speed=0;
else
speed-=speedDown;

}
}

2

编写程序,在场景中显示一个圆,在文本框中输入圆的半径,点击“确定”按钮后,改变圆的大小。

            

【试题输入输出】

程序界面如上图所示。

3.

设计正方形类Square,并用题目给出的测试类TestSquare测试自己设计的类Square。

类Square中必须提供的数据成员、成员方法、构造方法,由考生根据题目给出的测试类TestSquare判断得出。类Square是否需要继承其它的类或实现什么接口,都有考生自行决定。类Square中可以包含测试类TestSquare没有测到的成员,但不能修改题目指定的测试类TestSquare的代码。

【输入输出样例】

【试题输入输出】

请把自己定义的正方形类Square与题目给出的测试类TestSquare,一起提交调试。不允许改动测试类TestSquare的代码。

public class TestSquare{

public static void main(String[] args){

Square[] data=new  Square[5];

Scanner input = new Scanner(System.in);

for(int i=0;i<data.length;i++){

data[i]=new Square(input.nextInt());

}

System.out.println( "数组原顺序:");

for(Square squ:data)

System.out.println(squ.getArea());

System.out.println( "升序排序后:");

Square.sortByArea(data);

for(Square squ:data)

System.out.println(squ.getArea());

}

}

4.

编写电视类TV,UML类图和说明如下:

注意:

(1)电视只有在打开的状态下才可以调音量和设置新频道;

(2)设置音量和频道时,应该在规定的范围,如音量值为1-7。

【试题输入输出】

编写测试类,按照如下的顺序测试TV的功能:

(1)创建一个TV对象;

(2)打开TV对象,从键盘上读入要设置的音量和频道;

(3)输出TV对象的音量和频道;

(4)给TV对象的频道加1,音量减1;

(5)输出TV对象的当前音量和频道;

(6)关闭TV对象。

样例如下:

Java练习2的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

  10. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

随机推荐

  1. Beyas定理

    \(Beyas\)定理 首先由条件概率的计算式有 \[Pr\{A|B\}=\frac{Pr\{A\cap B\}}{Pr\{B\}}\] 结合交换律得到 \[Pr\{A\cap B\}=Pr\{B\} ...

  2. (六)QDialog,QMessageBox,QFileDialog,QColorDialog颜色,QFontDialog字体

    QDialog 对话框: 1.模态对话框: QDialog dlg(this); // 显示模态对话框 exec ,后面的不可操作 dlg.exec(); // 阻塞 2.非模态对话框: QDialo ...

  3. (String) leetcode 67. Add Binary

    Given two binary strings, return their sum (also a binary string). The input strings are both non-em ...

  4. Vue-route实现原理

    1.原理图如下所示 2.说明 1.安装插件的时候监听hashchange事件,监视_route 2.处理router-link 获取到path关联组件 3.等待hashchange触发,匹配route ...

  5. C#调用Java的WebService添加SOAPHeader验证

    C#调用Java的WebService添加SOAPHeader验证(2) 1.问题描述 调用的Java的webservice string Invoke(string func, string req ...

  6. xgboost-Python&R

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  7. 神经网络1_neuron network原理_python sklearn建模乳腺癌细胞分类器(推荐AAA)

    sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&a ...

  8. 史上最简单的Docker入门教程

    安装Ubuntu Docker 安装 CentOS Docker 安装 Windows Docker 安装 MacOS Docker 安装 这里我的电脑是mac,采用brew安装,安装完毕记得更换国内 ...

  9. [译]Ocelot - Rate Limiting

    原文 Ocelot支持对上游做访问限流,这样就可以保证下游不要负载太大了. 如果要启用访问限流,需要做如下配置: "RateLimitOptions": { "Clien ...

  10. day06 字典、元组、set的方法及常用操作

    今日内容: 1.深浅拷贝 2.元组 3.字典 4.set 1.深浅拷贝 # 1.值拷贝 # 采用赋值的方法进行 # 只会将堆区容器变量与栈区的绑定关系进行复制 # 2.浅拷贝 # 会将堆区与栈区的绑定 ...