- 浏览: 99638 次
- 性别:
- 来自: 成都
最新评论
-
lvning10086:
清晰易懂
Java Thread join() 的用法 -
tabsuny:
...... for (Futu ...
Java Callable用法 -
tabsuny:
...
Java Callable用法
文章列表
直接上Thinking in Java 4th 的例子:
class MyUntil {
static void print(String str) {
System.out.println(str);
}
}
class Toast {
public enum Status {
DRY, BUTTERED, JAMED
}
private Status status = Status.DRY;
private final int id;
public Toast(int id) {
this.id = id;
}
pub ...
本例阐述了java中wait() 和 notifyAll()的用法,摘自think in java 4th ,下面上代码:
class Car {
private boolean waxOn = false;
public synchronized void waxed() {
waxOn = true;
notifyAll();
}
public synchronized void buffed() {
waxOn = false;
notifyAll();
}
public synchronized void waitForW ...
Callable 和 Runnable 的使用方法大同小异, 区别在于:
1.Callable 使用 call() 方法, Runnable 使用 run() 方法
2.call() 可以返回值, 而 run()方法不能返回。
3.call() 可以抛出受检查的异常,比如ClassNotFoundException, 而run()不能抛出受检查的异常。
Callable示例如下:
class TaskWithResult implements Callable<String> {
private int id;
public TaskWithResult(int id ...
Java Thread中, join() 方法主要是让调用改方法的thread完成run方法里面的东西后, 在执行join()方法后面的代码。示例:class ThreadTesterA implements Runnable {
private int counter;
@Override
public void run() {
while (counter <= 10) {
System.out.print("Counter = " + counter + " ");
counter++;
}
...
通常情况下, 我们要阻止线程运行是在run方法中添加if判断来决定是否让线程继续运行, 今天在一个同事的帮助下, 我们使用另一种方式来结束线程, 即线程池的方式。下面首先看第一种方法的例子:
public class ThreadTest {
private static int counter;
private static final int MAX_VALUE = 5;
public static void main(String[] args) throws InterruptedException {
Thread mThread = new Thread(new ...
Effective in java 中推荐一种叫构建器的方法, 其实质就是在类中创建一个静态内部类来完成对元素值的注入,effective in java 中推荐当参数多于四个的时候使用此方式, 下面上代码。
public class NutritionsFacts {
private int servingSize;
priv ...
创建对象时, 应该优先选用静态工厂方法,其具有以下几个优势:
1. 静态工厂方法与构造器不同之一在于静态工厂方法有名字。
2. 静态工厂方法与工早起不同之二在于静态工厂方法不必在每次调用他的时候都创建一个新的对象。 ...