Groovy subclase llamado método de superclase que accede al cierre

Tengo una superclase maravillosa que se parece a:

class AGroovyClass {
   private String str = "hello"
   void printString(int nTimes) {
     nTimes.times { println str } 
  }        
}

y subclase

class AGroovySubclass extends AGroovyClass {
   // some other subclass methods
}

Mi código de cliente llama:

new AGroovySubclass().printString(5)

Y esto realmente se rompe porque dice que no existe tal propiedad "str" para AGroovySubclass

Pensé que, dado que el método printString está en AGroovyClass, no debería tener problemas para acceder a la propiedad "str", pero claramente soy incorrecto. Si quisiera mantener "str" en privado, ¿cuál es la forma adecuada de hacer que esto funcione?

Respuestas a la pregunta(2)

Su respuesta a la pregunta