摘要: /** * 例子:创建三个窗口卖票,总票数为100张.使用实现Runnable接口的方式 * 存在线程的安全问题,待解决。 */class Window1 implements Runnable{ private int ticket = 100; @Override public void run 阅读全文
posted @ 2019-12-24 23:01 图图W 阅读(502) 评论(0) 推荐(0)
摘要: /** * * 例子:创建三个窗口卖票,总票数为100张.使用继承Thread类的方式 * * 存在线程的安全问题,待解决。 * */class Window extends Thread{ private static int ticket = 100; @Override public void 阅读全文
posted @ 2019-12-24 23:00 图图W 阅读(868) 评论(0) 推荐(0)
摘要: /** * 多线程的创建,方式一:继承于Thread类 * 1. 创建一个继承于Thread类的子类 * 2. 重写Thread类的run() --> 将此线程执行的操作声明在run()中 * 3. 创建Thread类的子类的对象 * 4. 通过此对象调用start() * <p> * 例子:遍历1 阅读全文
posted @ 2019-12-24 22:57 图图W 阅读(653) 评论(0) 推荐(0)
摘要: /** * 创建多线程的方式二:实现Runnable接口 * 1. 创建一个实现了Runnable接口的类 * 2. 实现类去实现Runnable中的抽象方法:run() * 3. 创建实现类的对象 * 4. 将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象 * 5. 通过T 阅读全文
posted @ 2019-12-24 22:56 图图W 阅读(553) 评论(0) 推荐(0)
摘要: /** * 测试Thread中的常用方法: * 1. start():启动当前线程;调用当前线程的run() * 2. run(): 通常需要重写Thread类中的此方法,将创建的线程要执行的操作声明在此方法中 * 3. currentThread():静态方法,返回执行当前代码的线程 * 4. g 阅读全文
posted @ 2019-12-24 22:54 图图W 阅读(166) 评论(0) 推荐(0)