Message-ID: <1052202703.2445.1432371643271.JavaMail.email@example.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_2444_408899553.1432371643270" ------=_Part_2444_408899553.1432371643270 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Groovy's convention for properties is that any field wi= thout any visibility modifier is exposed as a property, with a getter and a= setter transparently generated for you. For instance, this Person class ex= poses a getter getName() and a setter setName() for a private name field:= p>=20=20
Which is equivalent to this Java class:=20 =20
That said, this approach has one drawback in that you don't have the pos= sibility to define a field with package-scope visibility. To be able to exp= ose a field with package-scope visibility, you can now annotate your field = with the @PackageScope annotation.