title: why groovy does not coerce to final classes
body: <p>Recently I've run into that Groovy does not allow coercion to final classes. </p>
  
  <pre><code>final class Example {
      def x
  }
  
  // GroovyCastException. cannot coerce because it is final class
  def a =  { x = 5 } as Example
  </code></pre>
  
  <p>Why is that? I guess it is something with the mechanism that Groovy use to coerce to classes?</p>