私のリビジョン リストの JavaBean セクションには、「属性とプロパティの違い」を知っておく必要があると記載されています。私は本当に2つの違いを見つけることができません。JavaBeans がプロパティを使用し、通常の Java クラスが属性を使用することは承知しています (少なくとも、私はそのように呼ぶように教えられました) が、実際の違いはわかりません。
ゲッター/セッターメソッドと関係がありますか?
ありがとう
私のリビジョン リストの JavaBean セクションには、「属性とプロパティの違い」を知っておく必要があると記載されています。私は本当に2つの違いを見つけることができません。JavaBeans がプロパティを使用し、通常の Java クラスが属性を使用することは承知しています (少なくとも、私はそのように呼ぶように教えられました) が、実際の違いはわかりません。
ゲッター/セッターメソッドと関係がありますか?
ありがとう
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
age
変換されますpersonAge
private int personAge;
public int getAge() {
return personAge;
}
public void setAge(int age) {
this.personAge = age;
}
この場合、プロパティは読み取り専用です。
private int age;
private Sex sex;
public boolean isFemaleAdult() {
return sex == Sex.FEMALE && age >= 18
}
Tapestry のドキュメントに興味深いヒントがいくつか見つかりました。
プロパティは属性と同じではありませんが、ほとんどの場合、各プロパティは属性によってバックアップされます。
以降:
もう 1 つの一般的なパターンは、合成プロパティです。ここでは、実際の属性はまったくなく、値は常にオンザフライで計算されます。
大まかに言うと、プロパティはメソッドのペアatype getXXX()
/に対応しvoid setXXX(atype )
ます。属性はメンバー フィールドを参照します。