为什么我们不能在接口方法声明中使用synchronized关键字

时间:2015-06-19 09:54:57

标签: java synchronized

任何人都可以解释为什么我们不能通过给出一个真实世界的例子来声明接口中的同步方法。

1 个答案:

答案 0 :(得分:3)

答案很简单,synchronized是一个实现细节,它不属于接口。在接口中,所有方法都没有实现细节。

文档说:

  

请注意,不得声明接口中声明的方法   strictfp或native或synchronized,或发生编译时错误,   因为这些关键字描述的是实现属性而不是   界面属性。但是,在接口中声明的方法可以   通过声明为strictfp或native或的方法实现   在实现接口的类中同步。

您也可以参考:What is the reason why “synchronized” is not allowed in Java 8 interface methods?