这是一个关于空调的软件,主要根据输入的温度来进行计算,详细的说明注释中都有,当你看完并且做出了这段代码,你应该就会明白,那个叫 Temperature 的东西就是类,我们需要完成的所有操作都在类中。
import java.util.Scanner;
public class Temperature {
//在类中创建本应用所需的全局变量。
private int ThinkTemperature;
private int NowTemperature;
int UpTemperature = 1;
//你要记得我,你会再回来看我的。
int DownTemperature = 2;
int time = 1;
int time1;
//创建一个方法,在方法中获取当前温度和理想温度。
public void Temperature(){
Scanner Import = new Scanner(System.in);
System.out.println("请输入你现在的室内温度:");
this.NowTemperature = Int();
System.out.println("请输入你理想的室内温度:");
this.ThinkTemperature = Int();
//当现在温度小于理想温度时,跳转至加热方法中,若现在温度大于理想温度,则跳转制冷方法中。当前温度和理想温度超出实际范围及其他情况输出错误。
if (NowTemperature >= 55) {
System.out.println("你仿佛是在刻意逗我笑!");
return;
}if (NowTemperature <= -35) {
System.out.println("你仿佛是在刻意逗我笑!!");
return;
}if (ThinkTemperature <= -35) {
System.out.println("你仿佛是在刻意逗我笑!!!");
return;
}if (ThinkTemperature >= 55) {
System.out.println("你仿佛是在刻意逗我笑!!!!");
return;
}if (NowTemperature < ThinkTemperature) {
Hot();
}if (NowTemperature > ThinkTemperature) {
Cold();
}
}
public void Hot(){
//使用理想温度减去现在温度,得出需要加热的温度,每次加热1°,也就是加热的次数。
int j = ThinkTemperature - NowTemperature;
//当循环次数小于或等于需加热次数时则执行循环(必须等于,否则不输出结果。)
for (int i = 0; i <= j; i++) {
//当当前温度小于理想温度时,则执行加热,否则跳出循环结束程序。
if (NowTemperature < ThinkTemperature) {
//延迟悬念(一下出结果多没意思。)
try{
Thread.currentThread().sleep(1000);
}catch(Exception e){}
//每次执行循环,都在当前温度上增加,注意增加的形式,你可以修改每次增加的温度,以及增加的温度所需的时间。
NowTemperature = NowTemperature +UpTemperature * time;
//对消耗时间进行一个统计。
time1 = time1 + time;
System.out.println("经过了" + time + "秒的加热,现在的温度是:" + NowTemperature + "°");
}else {
System.out.println("n总共经过了" + time1 + "秒的加热。");
System.out.println("现在的温度是:" + NowTemperature + "°,而你想要的温度是:" + ThinkTemperature + "°,加热已结束!感谢使用!");
//跳出循环结束程序。
continue;
}
}
}
//与Hot方法一样。
public void Cold() {
int j = NowTemperature - ThinkTemperature ;
for (int i = 0; i <= j; i++) {
if (NowTemperature > ThinkTemperature) {
try{
Thread.currentThread().sleep(1000);
}catch(Exception e){}
NowTemperature = NowTemperature - DownTemperature * time;
time1 = time1 +time;
System.out.println("经过了" + time + "秒的制冷,现在的温度是:" + NowTemperature + "°");
//制冷是每次温度降低2点,所以执行次数上会加倍,每次执行就减一次执行次数。
j--;
}else {
System.out.println("n总共经过了" + time1 + "秒的制冷。");
System.out.println("现在的温度是:" + NowTemperature + "°,而你想要的温度是:" + ThinkTemperature + "°,制冷已结束!感谢使用!");
continue;
}
}
}
}
在那个叫Temperature的类中,还有一个特殊的方法,叫main方法,这个方法的书写格式是固定的,而我们每个程序在启动的时候,都会先找到main方法,然后根据main方法中的代码来调用不同的类,完成不同的操作。 可以看到,我们把那个叫Temperature的类new(新建)了,并且叫cc,然后运行了叫cc的代码,没错,cc就是本小节的主题:对象,我们把类创建为对象,然后再调用这个对象,上一节中的代码就可以正常运行了,说出来你可能不信,当你只有类,没有对象的时候,你的代码是没办法运行的。而如果你只有对象,并没有类,你的代码也是没办法运行的,我想这很好理解吧? 这就是面向对象,把我们的代码全部都写到类中,当你想使用他们的时候,就可以创建对象来调用他们,而当你这个对象的使命完成以后,JVM就会从内存中把这个对象所占用的内存销毁掉。当然,这是你有多个对象的情况下。还有一个好处,你可以把这段代码调用N次,甚至直到你的内存全部占满了为止,这样就省的你把一段代码重复编写到很多地方了。而且当你想修改对象中的内容的时候,你只要修改类中的代码就可以了,否则你还需要在很多代码中找的你想修改的,然后一次次的修改,这样可能会造成很多莫名其妙的问题呢。
public class Temperature {
.....省略N条代码。
public static void main(String[] args) {
//将上面定义的类及方法创建成对象,并调用。
Temperature cc = new Temperature();
cc.Temperature();
}
}
在Java中如果想实现某种功能,例如算数功能,可以使用for来实现,在程序中如果想实现多次,可以使用方法的概念,这样可以减少代码的冗余,并且使用形参,在方法中的局部变量需要改变时,在形参中给予及时的改变。例如上例中的拖拉机,可以在调用时随意更改。
public class ForTest{
public static void main(String[] args) {
Car cc = new Car("蓝色", 3);
cc.run("拖拉机");
}
}
class Car{
private String color; //全局变量。
private int numLuntai; //全局变量。
public Car(String color , int numLuntai) {
super();
lor = color;
this.numLuntai = numLuntai;
}
//一个方法,作用是输出一段文字,其中有一个叫brang的局部变量,可以选择在方法中定义,也可以选择在调用方法时,给予形参。
public void run(String brang){
//String brang = "宝马"; //局部变量。
System.out.println(this.numLuntai + "个轮子的" + lor + brang +"在马路上行驶。");
}
}
本文发布于:2024-02-05 01:54:56,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170721387661961.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |