かずきのBlog@hatena

日本マイクロソフトに勤めています。XAML + C#の組み合わせをメインに、たまにASP.NETやJavaなどの.NET系以外のことも書いています。掲載内容は個人の見解であり、所属する企業を代表するものではありません。

へぇ〜!!thisってこんな風にかけたんだ!?

さっきNetBeansのモジュールで気になる部分のコードを読み漁ってたら見つけた。
知らないのは俺だけかな?
普段こんな書き方しないから、知らない人が多数であることを祈る!!

public class Person {
  private int age;
  public void setAge(int age) {
    Person.this.age = age; // thisの前にクラス名…?
  }
}

最初こりゃなんだ??って悩んだけど、どうやらthisと書くだけと同じっぽい。
ためしに書いてみたけどコンパイルエラー出ないし!!!
これは知らなかったなぁ…びっくり!!

ちなみにC#でも同じ書き方をしてみたら、こっちはコンパイルエラーになった。
微妙な違いやね。