anchor.diff:  and `getpNAME` and `getPNAME` respectively.
   ====
   
  +===== Modifiers on a property
  +
  +We have already seen that properties are defined by omitting the visibility modifier.
  +In general, any other modifiers, e.g. `transient` would be copied across to the field.
  +Two special cases are worth noting:
  +
  +* `final`, which we saw earlier is for read-only properties, is copied onto the backing field but also causes no setter to be defined
  +* `static` is copied onto the backing field but also causes the accessor methods to be static
  +
  +If you wish to have a modifier like `final` also carried over to the accessor methods,
  +you can write your properties long hand or consider using a <<split-properties,split property definition>>.
  +
   ===== Annotations on a property
   
   Annotations, including those associated with AST transforms,
  
positive.code: include::../test/objectorientation/MethodsTest.groovy[tags=checked_method_declaration,indent=0]
  ----
  
  === Fields and properties
  
  [[fields]]
  ==== Fields
  
negative.code: ----
  <1> Backing field for name property
  <2> Declare name property with annotation for setter/getter
  
  ===== Explicit accessor methods
  
  The automatic generation of accessor methods doesn't occur if there
  is an explicit definition of the getter or setter in the class.
  This allows you to modify the normal behavior of such a getter or setter if needed.
  Inherited accessor methods aren't normally considered but if an inherited
  accessor method is marked final, that will also cause no generation of an
  additional accessor method to honor the `final` requirement of no subclassing of such methods.
  
  === Annotation
  
  