2024-03-31 23:55:16 | 我爱编程网
我给你举例吧:
有个人要从六楼坐电梯下到一楼去买菜:
整个这个过程就当是一个完整的程序运行,java虚拟机在运行执行这一过程!
1.先说正常情况:
你的if判断:如果这个人到了一楼了,程序也就算结束了,然后去买菜,虚拟机也算完成任务了,使用:
System.exit(0);虚拟机完整的退出当前系统!
2.异常情况:
电梯故障,电梯直接从六楼掉落到一楼:
你的if判断:发现故障了,人虽然到了一楼了,菜反正是买不了了,程序就此终止!这就所谓的异常!
System.exit(1);这操作可以用在针对异常捕捉的时候使用!
3.以上两个都不推荐随便使用,结束程序方法太多,return;就是最好的!
最佳答案代码如下:
public class ElevatorModel implenent ElevatorModelListener{
ElevatorShaft elevatorShaft;//电梯车箱
Floor firstFloor;
Floor secondFloor;
public void addPerson(Person person);
//实现ElevatorModelListener接口的所有方法
}
public abstract class Location{
String locationName;//可能占据的三个位置firstFloor; secondFloor;elevator中的其中一个位置。
public Button getButton();
public Door getDoor();
}
public class Floor extends Location{
public Floor(String firstFloor,String secondFloor);
public Button getButton();//具体实现
public Door getDoor();//具体实现
public ElevatorShaft getElevatorShaft();
}
public class Door implenent ElevatorMoveListener{
boolean open;//门是开的关的
public void openDoor();//开门
public viod clossDoor();//关门
}
public class Button implenent ElevatorMoveListener{
boolean pressed;
public void pressButton();//按下按钮
public void resetButton();//释放按钮
public void elevatorArrived();//电梯到来
}
public class ElevatorShaft{//电梯乘箱
Elevator elevator;//电梯
Button firstFloorButton,secondFloorButton;//出发层的按钮和到达层的按钮 Door firstFloorDoor,secondFloorDoor;//出发的门和到达的门我爱编程网
Light firstFloorLight,secondFloorLight;//灯
//监听器
DoorListener doorListener;
ButtonListener buttonListener;
LightListener ligthListener;
BellListener bellListener;
ElevatorMoveListener elevatorMoveListener;
Set set;
}
public class Light implenent ElevatorMoveListener{
boolean lightOn;//代表灯的状态,亮或灭
public void turnOnLight();
public void turnOffLight();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Bell implenent ElevatorMoveListener{
public void ringBell();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Elevator extends Location implenets
ButtonListener,DoorListener,BellListener,Runable
{//电梯乘箱
boolean moving;
boolean summoned;//描述Elevator是在移动还是已经补召唤
Floor currentFloor;//当前正在提供服务的Floor
Floor destinationFloor ; //代表将要到达的Floor
Button elevatorButton;
Door elevatorDoor;
Bell bell;
public void run();// 实现
public void requestElevator();//请求Elevator并产生排队请求。 }
public class Person extends Thread{
Location类对象(或是位于Floor上,或是出处在Elevator中); int ID;
boolean moving;
public void run();//具体实现
public void enterAndRideElevator();
}
这是我回答前几天和你一样想要的电梯程序 是单箱的 希望能帮助你 package bean; public class dianti { int on=1;//定义一个初始化楼层 初始化是在1层 //先从简单的开始 我们先写两个方法 一个是在电梯外面方法 一个是在电梯内部的方法 public void wai(int num)//外部方法 { if(num==this.on) { System.out.println("停留在本层 直接开门"); } else if(num>this.on) { Thread th = new Thread(); for(int i=this.on;i<=num;i++) { if(i==num) { System.out.println("电梯到达~开门请进···"); this.on=num; } else { System.out.println("电梯在"+i+"层 马上就到,请等待····"); try { th.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } } else if(num>0&&num
用Python输出100到999之间的水仙花数?水仙花数是指一个n位数(n≥3)其各位数字的n次方之和等于该数本身。例如,153就是一个水仙花数,因为$1^3+5^3+3^3=153$。你可以使用循环来查找100到999之间的水仙花数,下面是一个Python程序示例:fornuminrange(100,1000):#将数字转换为字符串,以便对每个数字进行分离和求幂num_st
java获取运行时间很多朋友都想知道java怎么获取运行时间?下面就一起来了解一下吧~第一种是以毫秒为单位计算的。//伪代码long startTime=System.currentTimeMillis(); //获取开始时间doSomeThing(); //测试的代码段long endTime=System.currentTimeMillis(); //获取结束时间System.
java调试的时候怎么显示程序以一个1到100求累加和的小程序为例进行说明。程序代码如图所示,第一步,双击各行左侧对应区域添加断点。根据程序代码,设置预期的端点,设置完毕后如图所示,左侧会出现图标作为标记。在代码窗口任意位置右击鼠标,先选择DebugAs,再选择JavaApplication进入调试界面。调试界面如图所示,点击左上方窗口上的绿色三角箭头按钮开始调试,每点击一
java写了一个闹钟程序程序如何能直接运行。像安装好的软件那样?将Java代码编译成可执行文件或安装包,可以使用Java开发工具和打包工具进行操作,具体步骤如下:选定一个Java开发工具,如Eclipse、NetBeans等,在该工具中打开Java代码文件。配置项目参数,包括程序入口、输出目录、文件名等。进行编译,生成可执行文件或jar包。使用Jav
如何让JAVA程序一直运行一直运行的最好方式是,做成socketServer,一直循环监听,利用服务器推送技术去不断的访问client的文件,来判断是否被修改。可是这样专业化的制作,工程量就大了。还是看你的需求,如果不是项目要求的话,自己写的test的话,可以用SVN版本控制管理工具啊。只需要简单的配置就可以大家共享文件,还可以检查是否被更改,以及每个版本都会被记录和找回,很
javaweb如何去调用一个spark程序javaweb如何去调用一个spark程序public class HeadlinesFragment extends ListFragment { OnHeadlineSelectedListener mCallback; public interface OnHeadlineSelectedListener { void onArticle
求解JAVA编程题:编写一个应用程序,创建三个线程分别显示各自的运行时间public class ThreadRuningTime { public static AtomicInteger integer = new AtomicInteger(0); public static AtomicInteger s = new AtomicInteger(0); public static i
基于python开发linuxGUI应用,哪个IDE比较好eclipse很强大。不过最近我在用sublimetext2,这个很喜欢。另外geany我也经常用。vi经常用。再就是python自带的idleeclipse有些大。用起有些有不方便。sublimetext2很体贴,小巧,适合专业程序员使用。也适合高度较小的屏幕。geany是相对比较完善的,免费,又普及的,各个平台都有的
2024-03-02 02:58:47
2024-01-01 09:58:48
2024-03-21 00:22:13
2024-01-26 10:37:53
2024-03-04 07:43:42
2024-01-17 23:29:33