这是多余的,并且您提出了一个很好的观点。
我认为要求final或static的真正原因是强制不能重写该方法,因此子类不能以使@SafeVarargs注释对方法的定义无效的方式篡改数据。
但是,尽管这是多余的,但它并不是一个糟糕的决定-
很多时候,程序员将使每种方法尽可能地私有,然后根据需要缓慢地打开类。如果此方法在私有范围内时被标记为final,则如果必须打开该方法,则只需更改访问级别,它仍然可以具有@SafeVarargs批注。如果有意删除了final,则会出现编译时错误,但是如果已经删除了,则无论谁删除私有访问权(在基于团队的环境中可能不是您自己),谁都不会感到困惑突然删除“
private”修饰符会使代码不再编译。



