小编Gee*_*eek的帖子

对于具有变量名称作为条件的循环流程.

以下for循环有什么作用?程序何时会脱离循环?

for (c = 0; n; c++) {
  /* . . . */
}
Run Code Online (Sandbox Code Playgroud)

这是SO上这个答案的这种for循环的一个例子.

c for-loop

1
推荐指数
1
解决办法
152
查看次数

有效Java书中适当声明读取解析方法的含义是什么?

从Effective Java的Serialization章节:

如果被反序列化的对象的类使用适当的声明定义了readResolve方法,则在反序列化后对新创建的对象调用此方法.

Effective Java中提供的示例如下所示,似乎Javadoc所说的throws部分是正确的格式,即ANY-ACCESS-MODIFIER Object readResolve() throws ObjectStreamException;

 // readResolve for instance control - you can do better!
        private Object readResolve () {
            // Return the one true Elvis and let the garbage collector
            // take care of the Elvis impersonator.
            return INSTANCE;
        }
Run Code Online (Sandbox Code Playgroud)

这里有适当的声明是什么意思?如果声明不合适,课程是否会编译?我发现这句话有点令人困惑.

java serialization effective-java

1
推荐指数
1
解决办法
640
查看次数

为什么阻塞库方法通常通过调用static interrupted()而不是实例方法isInterrupted()来响应中断?

请考虑以下来自java.util.concurrent.locks.AbstractQueuedSynchronizer的代码,作为标题中提出的想法的众多示例之一:

1258    public final boolean tryAcquireSharedNanos(int arg, long nanosTimeout) throws Interrupted Exception {
1259        if (Thread.interrupted())
1260            throw new InterruptedException();
1261        return tryAcquireShared(arg) >= 0 ||
1262            doAcquireSharedNanos(arg, nanosTimeout);
1263    }
Run Code Online (Sandbox Code Playgroud)

为什么大多数阻塞库方法通过调用静态方法Thread.interrupted()而不是实例方法来响应中断isInterrupted().调用静态方法也会清除中断状态,因此即使任务处理代码吞下InterruptionException,调用者也无法知道除了中断状态之外的其他状态.

java java.util.concurrent

0
推荐指数
1
解决办法
106
查看次数

自定义密钥对象应该是不可变的吗?如果是,那为什么呢?

好吧我想让自定义用户定义的对象作为我的键HashMap而不是说String.候选对象应该是不可变的吗?我在某处读到最好的做法是让它们不变,但我无法弄清楚原因.

java collections immutability

0
推荐指数
2
解决办法
622
查看次数

为什么 Enum 声明中的类型参数包含递归类型界限?

  public abstract class Enum<E extends Enum<E>>
            implements Comparable<E>, Serializable {
     // All code goes here

    }
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,为什么 的类型参数有递归类型绑定Enum,以及为什么包含 的部分缺失Comparable<E>。换句话说,为什么它是Comparable<E>而不是Comparable<E extends Comparable<E>>

java generics enums

0
推荐指数
1
解决办法
319
查看次数

是否可以为Serializable类进行锁定瞬态?

我有一个实现的类,Serializable我通过一个类型的对象来保护这个类的不变量Object.是暂时还是可以有任何不必要的副作用?

代码:

class MyClass implements Serializable{

 private final transient lock = new Object();
  ....
}
Run Code Online (Sandbox Code Playgroud)

java concurrency serialization locking

0
推荐指数
1
解决办法
933
查看次数