(大家好,今天分享的是Java的相关知识,大家可以在评论区进行互动答疑哦~加油!💕)
目录
Plug:程序实现
方法一(记事本)
- 新建一个记事本
- 输入代码
- 另存文件
- 更改文件名,名字为public后的名字+.java(Hello.java)
- 更改保存类型,选择所有文件
- 选择编码格式,一般选择ANSI 或 UTF-8(在编译时需加上固定格式-encoding utf-8)(这里我们选择UTF-8)
方法二(IDEA)
-
新建java文件
-
输入代码
-
编译运行
(相较简便一些)
实验一:机动车
一、实验目的
本实验的目的是让学生使用类来封装对象的属性和功能。
二、实验要求
编写一个Java应用程序,该程序有两个类,即Vehicle(用于刻画机动车)和User(主类)。具体要求如下:
-
Vehicle类有一个double类型的变量speed,用于刻画机动车的速度,一个int型变量power,用于刻面机动车的功率。类中定义了speedUp(int s)方法,体现机动车有加速功能; 定义了speedDown( )方法,体现机动车有减速功能;定义了setPower(int p)方法,用于设置机动车的功率:定义了getPower( )方法,用于获取机动车的功率。机动车的UML图如下图所示。
-
在主类User的main( )方法中用Vehicle类创建对像,并让该对象调用方法设置功率,演示加速和减速功能。 请按下列程序模板要求,将【代码】替换为Java程序代码。
|-------------------------------------------------------------------------------------------|
| Vehicle |
| speed:double power:int |
| speedUp(int):void speedDown(int):void getSpeed():double setPower(int):void getPower():int |
三、程序代码
Vehicle.java
java
public class Vehicle {
double speed;//【代码1】声明double型变量speed,刻画速度
int power;//【代码2】声明int型变量power,刻画功率
void speedUp(int s) {
this.speed=s +this.speed;//【代码3】将参数s的值与成员变量speed的和赋值给成员变量speed
}
void speedDown(int d) {
this.speed=this.speed-d;//【代码4】将成员变量speed与参数d的差赋值给成员变量speed
}
void setPower(int p) {
this.power=p;//【代码5】将参数p的值赋值给成员变量power
}
int getPower() {
return this.power; //【代码6】返回成员变量power的值
}
double getSpeed() {
return speed;
}
}
User.java
java
public class User {
public static void main(String args[]) {
Vehicle car1,car2;
car1=new Vehicle();//【代码7】使用new 运算符和默认的构造方法创建对象car1
car2 = new Vehicle(); //【代码8】使用new 运算符和默认的构造方法创建对象car2
car1.setPower(128);
car2.setPower(76);
System.out.println("car1的功率是:"+car1.getPower());
System.out.println("car2的功率是:"+car2.getPower());
car1.speedUp(80);//【代码9】car1调用speedUp方法将自己的speed的值增加80
car2.speedUp(100);//【代码10】car2调用speedUp方法将自己的speed的值增加100
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
car1.speedDown(10);
car2.speedDown(20);
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
}
}
四、实验 结果
实验二:猜数字游戏
一、实验目的
本实验的目的是让学生掌握对象的组合以及参数传递。
二、实验要求
创建以学号命名的文件夹,编写一个Java程序,模拟家庭买一台电视,即家庭将电视作为自己的一个成员,通过调用一个方法将某台电视的引用传递给自己的电视成员。具体要求如下:
(1)有TV.java、Family,java 和 MainClass.java3个源文件,其中 TV.java 中的 TV 类负责创建"电视"对象,Family.java 中的Family 类负责创建"家庭"对象,MainClass.java是主类。
(2)在主类的 main()方法中首先使用 TV 类创建一个对象 haierTV,然后使用 Family 类再创建一个对象 zhangSanFamily,并将先前TV 类的实例 haierTV 的引用传递给 zhangSanFamily对象的成员变量 homeTV。
Family 类组合 TV 类的实例的 UML 图如图所示:
|-----------------------------------------------------|---------|----------------------------------------------------------|
| Family | ------→ | TV |
| homeTV:TV | | channel:int |
| buyTV(TV):void remoteControl(int):void seeTV():void | | setChannel(int):void getChannel():int showProgram():void |
三、程序代码
TV.java
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("不能收看"+channel+"频道");
}
}
}
Family.java
java
public class Family {
TV homeTV;
void buyTV(TV tv) {
homeTV = tv//【代码1】将参数tv赋值给homeTV
}
void remoteControl(int m) {
homeTV.setChannel(m);
}
void seeTV() {
homeTV.showProgram(); //homeTV调用showProgram()方法
}
}
MainClass.java
java
public class MainClass {
public static void main(String args[]) {
TV haierTV = new TV();
haierTV.setChannel(5);//【代码2】haierTV调用setChannel(int m),并向参数m传递5
System.out.println("haierTV的频道是"+haierTV.getChannel());
Family zhangSanFamily = new Family();
zhangSanFamily.buyTV(haierTV);//【代码3】zhangSanFamily调用void buyTV(TV tv)方法,并将haierTV传递给参数TV
System.out.println("zhangSanFamily开始看电视节目");
zhangSanFamily.seeTV();
int m=2;
System.out.println("hangSanFamily将电视更换到"+m+"频道");
zhangSanFamily.remoteControl(m);
System.out.println("haierTV的频道是"+haierTV.getChannel());
System.out.println("hangSanFamily再看电视节目");
zhangSanFamily.seeTV();
}
}
四、实验 结果
(今日分享暂时到此为止啦!为不断努力的自己鼓鼓掌吧🥳。今日文案分享:最好的升华是沉淀自己。)