java实验及答案_JAVA实验4-1答案
GDOU-B-11-112
广东海洋大学学生实验报告书(学生用表)
实验名称 学院(系) 学生姓名
实验四(1). 类与对象(第1
部分) 信息学院 彭德权
专业
Java程序设计与开发
课程名称 课程号 16232204
技术 计算机科学与技术
钟海楼 04019
班级 计科1131 2015年
实验日期
9月24日
学号 201311621124 实验地点
一、实验目的
(1)学习使用Java中的类来封装对象的属性和功能; (2)学习掌握Java中对象的组合及参数传递。
二、实验任务
完成实验三指导上实验1、实验2的实验任务。
三、实验仪器设备和材料
安装有J2SE开发工具的PC机。
四、实验内容和步骤 实验1 机动车
编写一个Java应用程序,改程序中有两个类:Vehicle(用于刻画机动车)和User(主类)。具体要求如实验指导所示。
代码如下: Vehicle.java
public class Vehicle{ private double speed; private int power; void speedUp(int s){
this.speed=this.speed+s; }
void speedDown(int s){
this.speed=this.speed-s; }
void setPower(int p){ this.power=p; }
int getPower(){
return this.power;
}
double getSpeed(){ return this.speed; } }
User.java
public class User{
public static void main(String args[]){ Vehicle car1,car2; car1=new Vehicle(); car2=new Vehicle(); car1.setPower(128); car2.setPower(76);
System.out.println(\的功率是:\ System.out.println(\的功率是:\ car1.speedUp(80); car2.speedUp(80);
System.out.println(\目前的速度:\ System.out.println(\目前的速度:\ car1.speedDown(10); car2.speedDown(20);
System.out.println(\目前的速度:\ System.out.println(\目前的速度:\ } }
运行结果:
课后的练习
(1) 改进speedUp()方法,使得Vehicle类的对象加速时不能将speed值超过200。
void speedUp(int s){
if(this.speed+s>200){
System.out.println(\速度不能超过200\ }
else{
this.speed=this.speed+s; } }
在主方法中更改为car1.speedUp(210); 运行结果:
(2) 改进speedDown()方法,使得Vehicle类的对象在减速时不能将speed值小于0。
void speedDown(int s){ if(this.speed-s<0){
System.out.println(\速度不能少于0\ } else{
this.speed=this.speed-s; } }
在主方法中更改为car1.speedUp(80);
car1.speedDown(90);
运行结果:
(3) 增加一个刹车方法void brake(),Vehicle类的对象调用它将speed的值变成0。
void brake(){ this.speed=0; }
在主方法中增加语句:
System.out.println(\刹车\ car1.brake();
System.out.println(\目前的速度:\运行结果:
实验2 家中的电视
编写一个Java应用程序,模拟家庭购买一台电视,即家庭将电视作为自己的一个成员,即通过调用一个方法将某个电视的引用传递给自己的电视成员。具体要求如实验指导所示。
代码如下: TV.java
public class TV{ int channel;
void setChannel(int m){ if(m>=1){
channel=m; } }
int getChannel(){ return channel; }
void showProgram(){ switch(channel){
case 1:System.out.println(\综合频道\ break;
case 2:System.out.println(\经济频道\ break;
case 3:System.out.println(\文艺频道\ break;
case 4:System.out.println(\国际频道\ break;
case 5:System.out.println(\体育频道\ break;
default:System.out.println(\不能收看\频道\ }
} }
Family.java
public class Family{ TV homeTV;
void buyTV(TV tv){ this.homeTV=tv; }
void remoteControl(int m){ homeTV.setChannel(m); }
void seeTV(){
homeTV.showProgram(); } }
MainClass.java
public class MainClass{
public static void main(String args[]){ TV haierTV=new TV(); haierTV.setChannel(5);
System.out.println(\的频道是\ Family zhangSanFamily=new Family(); zhangSanFamily.buyTV(haierTV);
System.out.println(\开始看电视节目\ zhangSanFamily.seeTV(); int m=2;
System.out.println(\将电视更换到\频道\ zhangSanFamily.remoteControl(m);
System.out.println(\的频道是\ System.out.println(\再看电视节目\ zhangSanFamily.seeTV(); } }
运行结果:
课后的练习
(1) 省略代码2程序能否通过编译?若能通过编译,程序输出的结果是怎样的?
能编译通过。结果如下图,原因是对象内的元素channel是int型数据,默认值为0。 运行结果:
(2) 在朱类main()方法的最后增添下列代码,并解释运行效果。
Family liiFamily=new Family(); lisiFamily.buyTV(haierTV); lisiFamily.seeTV();
因为zhangSanFamily和lisiFamily引用了同一个对象成员haierTV, 导致当zhangSanFamily调用方法remoteControl()改变channel的值时, lisiFamily中的对象成员的channel值也会改变。
运行结果:
成绩 指导教师
孙兵
日期 2015年9月26日
第 页,共 页
注:请用A4纸书写,不够另附纸。
java实验及答案_JAVA实验4-1答案相关推荐
- java实验报告答案_Java实验报告--继承与接口
学院 专业 班.学号 姓名 教师评定_________________ 实验题目 继承与接口 一. 实验目的与要求 实验目的: 1.掌握类的继承关系. 2.掌握接口的定义与使用. 实验要求: 按下列要 ...
- java实验3答案_java实验3 .doc
[单选题]主机甲与主机乙之间建立一个TCP连接,主机甲向主机乙发送了3个连接的TCP段,分别包含300字节.400字节和500字节的有效载荷,第3个段的序号为900.若主机乙仅正确接收第1和第3个段, ...
- java 实验报告模板_Java实验报告模板.doc.doc
Java实验报告模板.doc 实 验 报 告 课程名称Java面向对象程序设计实验名称检查危险品姓名吴超益学号201424134114专业年级14物联网一.实验目的: 本实验的目的是让学生掌握try- ...
- java实验的总结_Java实验总结——初学(上)
实验一 集合(一) [实验目的与要求] 1.了解Java集合类的概念: 2.掌握常用集合类的使用方法和技巧,并能应用到实际操作中. [实验内容] 1.请编写一个程序,要求如下:1)首先生成10个1至1 ...
- java作品设计报告书_java实验报告书格式模板.doc
java实验报告书格式模板.doc 广东第二师范学院 计算机科学系 实验报告Java实验报告实验名称 实验分组号 实 验 人 班 级 学 号 实验指导教师 实验场地 实验时间 成 绩 a51ced6b ...
- java实验报告二_java实验报告二
北京电子科技学院(BESTI) 实验报告 课程:java程序设计 班级:1351 姓名:陈民禾 学号:20135124 ...
- java实体类设计_java实验1 实体类的设计-答案
实验一实体类设计 一.实验时间:姓名:学号: 二.实验目的 1.掌握Java的类结构: 2.掌握实体类的作用: 3.能够对相似对象的共同属性进行抽象: 4.掌握对成员变量的赋值和取值函数编写: 5.理 ...
- java实验作业答案_JAVA实验作业 JAVA题目
只供参考,抄袭可耻,复制不一定可以使用 实验6:继承与多态 1.定义一个Employee雇员类,含:姓名.年龄.工资等字段:继承Employee类设计Manager经理类,增加:管理人员数等字段:经理 ...
- java实验报告二_Java实验报告(实验二)
(1)伪代码 (2)产品代码 (3)测试代码 a.首先在虚拟机中建立一个以自己学号命名的文件夹,以存放自己实验中的代码.运行结果以及截图 2.按照实验说明里的要求,将代码输入,并运行出结果: 做以 ...
最新文章
- 让看不见的AI算法,助你拿下看得见的广阔市场
- 99. Recover Binary Search Tree (Tree; DFS)
- promise 实现依次循环 请求数据
- 洛谷精选 - 字符串合集
- 基于语音识别的微博签到系统
- 如何帮用户管好云账本?阿里云数据库助力收钱吧 | 甲子光年
- [Ajax] 实现跨域访问
- pytorch from_numpy
- @游戏开发者,ImGUI 能成为 GUI 的未来吗?
- 结对项目---万年历
- VirtualBox中增强工具的安装
- P4与5G UPF实践
- Scrum敏捷开发模式
- webview适配(一):文件选择,相机拍照,相册选择
- ios error90096 错误
- python storm连接mysql_Python ORM Storm 源码修改
- 360Wonder监控系统,设计和开发经验之谈
- RabbitMQ实战指南之RabbitMQ架构及运转流程
- Apache安装时出现OS:拒绝访问的解决办法
- springboot游泳池管理系统
热门文章
- 基于MATLAB的无刷直流调速系统的设计与仿真
- 云计算对电子商务行业的影响
- 密钥ssh 配置操作
- 自如网杭州市租房数据分析(1)
- LED应用于非照明领域的技术趋势
- 关于“尺蠖(huò)效应”
- Mac教程:如何开启任何来源选项?
- openlayer 获取天地图
- 程序员修炼之道读后感(一)
- OSError: (External) Cublas error, CUBLAS_STATUS_NOT_INITIALIZED. The cuBLAS library was not Initia