トゥイジルによるアクセッサの定義を行うため、処理が重いからです。定義することでオーバーロードすることができます。A抽象クラス、インターフェースロール(Roles)は、Javaでいうところの抽象クラスやインターフェースに当たるものです。ロールを多重継承したときに同じ名前のメソッドが存在するときはエラーになります。そのときは、子クラスの方でそのメソッドを実装(オーバーライド)しなければなりません。演算子は自分で定義することもできます。