相关疑难解决方法(0)

我什么时候应该在java中使用"strictfp"关键字?

我已经查明了它的作用,但是有没有人真的有一个例子,你何时会strictfp在Java中使用关键字?有没有人真的找到了这个用途?

将它放在我的所有浮点运算上是否会产生任何副作用?

java floating-point strictfp

250
推荐指数
6
解决办法
8万
查看次数

在Java 8接口方法中不允许"synchronized"的原因是什么?

在Java 8中,我可以轻松地写:

interface Interface1 {
    default void method1() {
        synchronized (this) {
            // Something
        }
    }

    static void method2() {
        synchronized (Interface1.class) {
            // Something
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我将获得完全同步语义,我也可以在类中使用.但是,我不能synchronized在方法声明上使用修饰符:

interface Interface2 {
    default synchronized void method1() {
        //  ^^^^^^^^^^^^ Modifier 'synchronized' not allowed here
    }

    static synchronized void method2() {
        // ^^^^^^^^^^^^ Modifier 'synchronized' not allowed here
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,我们可以认为,这两个接口的行为方式相同,只是Interface2建立了一个合同上的method1()method2(),这是比强一点Interface1呢.当然,我们也可能会争辩说default实现不应该对具体实现状态做出任何假设,或者这样的关键字根本不会减轻它的重量.

题:

JSR-335专家组决定不支持synchronized接口方法的原因是什么?

java synchronized java-8 jsr335 default-method

208
推荐指数
1
解决办法
2万
查看次数

为什么同步方法不包含在接口中

当我synchronized在接口中使用某个方法时,编译器会发出错误.你能告诉我为什么会这样吗?

(逻辑上)synchronized不能应用于某个方法的原因是interface什么?

我尝试在此链接中创建一个Interface over Threadpool .帮我在上面的代码中创建Interface.

java oop multithreading

41
推荐指数
3
解决办法
1万
查看次数