JavaBean中包含四种类型的属性,它们分别是简单属性(simple property)、索引属性(indexed property)、绑定属性(bound property)和约束属性(constrained property),首先对前两种属性进行介绍。
1、简单属性
简单属性是非数组类型的属性,它的修改器必须接受一个参数,参数类型由属性的特性决定,可以是任意类型。而简单属性的访问器仅仅是用于返回属性的值,它不接受任何参数,但它要返回一个值,返回值的类型必须与修改器所接收的参数类型一致。
public class Book {
private double price;
publicString getPrice() {
return price;
}
public voidsetPrice(double price) {
this.price= price;
}
}
2、索引属性
索引属性是数组类型的属性,JavaBean中需要对索引索性提供两对setter和getter方法,一对用于设置和获取数组本身,另一对用于设置和获取数组中的元素。接下来就通过一个JavaBean来演示索引属性的定义,代码如例程所示。
class Person {
// 索引属性hobbies
privateString[] hobbies;
// 设置和获取属性本身
publicString[] getHobbies() {
returnhobbies;
}
publicvoid setHobbies(String[] hobbies) {
this.hobbies= hobbies;
}
// 设置和获取属性中的元素
publicString getHobbies(int i) {
returnhobbies;
}
publicvoid setHobbies(int i, String hobby) {
hobbies= hobby;
}
}
在例程所示的JavaBean中,定义了一个索引属性hobbies,为了使外界能够方便的操作该属性,提供了一对重载的setHobbies()方法和一对重载的getHobbies()方法,其中setHobbies(String hobbies)方法用于设置数组属性hobboes本身,而setHobbies(int i,String hobby)方法用于设置数组属性中的元素。重载的geHobbies()方法作用与之相同。