I have an annotation that receives a \"dynamic\" parameter according to this idiom, i.e. a parameter of an interface type. In short:
public interface MyInterface
There was an answer by Will Lp that he deleted because it was related to Groovy and not to Java.
I do, however, think that it is relevant nonetheless.
When using Groovy you can actually pass a closure as a class parameter to an annotation.