我会在代码中出现问题的地方发布我的三个问题,并将其发布在这里。
Q1什么是线程,我如何使用它们?
问题2:“try”/“catch”是如何工作的?Q3有什么例外?请参见代码。
提前感谢您:)
public void start() {
// Question 1: What are these threads and how do i implement them?
Thread frameTiming = new Thread (this);
frameTiming.start ();
}
public void run() {
while (true) {
xleft-=10;
yleft-=10;
xleft2+=10;
yleft2+=10;
i-=5;
repaint();
// Question 2: what does try/catch do?
try {
Thread.sleep(40);
// question3: what does this exception do exactly? :0
} catch (Exception e) {
}
}发布于 2014-04-18 10:50:11
线程是包含足够的支持结构来充当轻量级进程的对象。
进程就像一个正在执行的程序,但它是一个形式化的定义,是由操作系统管理的东西,它决定一个进程是否获得CPU时间。
线程之所以像轻量级进程,是因为即使它几乎独立于主程序获得分配的CPU时间,它也不能获得进程所获得的一切。它与进程中的其他线程共享内存,而真正的进程获得自己的私有内存空间。
添加的try / catch块用于捕获调用Thread.sleep(...)时抛出的已知的已声明异常。由于线程请求从CPU上移除至少40毫秒,因此有可能在它离开CPU时,程序关闭或其他一些线程出于其他原因告诉它“唤醒”它。如果发生这种情况,则Thread.sleep(...)调用将不会正常完成休眠,而是会使用InterruptedException异常终止调用
发布于 2014-04-18 10:53:03
Q1什么是线程,我如何使用它们?
当你运行代码时,它通常都是线性运行的。假设您请求用户输入。程序停止,然后等待用户输入。如果用户从不输入怎么办?程序永远不会前进。拥有多个线程允许您在等待用户输入的同时在后台执行操作。它还允许您将工作划分为多个同时进行的方法,以利用多个核心的优势,尽管如果没有适当的算法来划分工作,您将不会给自己带来多少好处。
How to start a thread in Java
Q2 'try‘/ 'catch’是如何工作的?
在Java和许多其他语言中,try and catch是您处理通常认为可以恢复的可能错误的方式。例如,如果你问一个用户一个数字,他可能会给你一个字母,因此你不会问他一个数字,而是试着问他一个数字。如果用户犯了错误,你可以捕捉到他的错误,然后进行追索。这不仅仅适用于用户输入,假设您打开了一个文件,但该文件不存在,或者发生了导致读取操作失败的其他错误。这种可能性需要你去尝试,而不是直接去做。
How to use try/catch
Q3有什么例外?
异常是方法在出现问题时抛出的东西。在Java中有两种类型的异常,已检查的和未检查的。大多数未检查的异常都是由于程序员的错误造成的,比如数组越界。然而,常见的异常,比如试图打开一个文件,但因为它不存在而无法打开,这些异常被称为检查异常,这意味着您必须用try catch将它们括起来,这对于Java来说是非常独特的。
Click here to learn in a more professional manner the three types of Exceptions in Java
https://stackoverflow.com/questions/23146591
复制相似问题