public class MyThreadPool {
ExecutorService es= Executors.newFixedThreadPool(6);
Executors.newFixedThreadPool(6);
}
如果您在IDEA中输入这样的代码。在第3行将出现错误:无法解析符号'newFixedThreadPool'。为什么要这样写代码?通常我会写A.Method1().var
。当IDEA看到.var
会自动补充返回值,但在这种情况下不可以。为什么会这样?
在Java中,除了变量声明/初始化之外,没有其他语句可以在方法或初始化块之外进行。
ExecutorService es= Executors.newFixedThreadPool(6);
这是一个声明。为它分配一个值是有效的。
Executors.newFixedThreadPool(6);
这不是声明。因此,将其置于方法或初始化块之外不是有效的语句。