什么是JavaBean
JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制(反射机制)发现和操作这些JavaBean 的属性。——《百度百科》
光看百度百科这一段定义并不能很清楚的理解 JavaBean 以及 JavaBean 的作用,我们需要通过例子来具体分析。
JavaBean 是特殊的 Java 类,使用 Java 语言书写,并且遵守 JavaBean API 规范,它有独一无二的特征。
JavaBean特征
- 提供一个默认的无参构造函数。
- 需要被序列化并且实现了 Serializable 接口。
- 可能有一系列可读写属性。
- 可能有一系列的 getter 或 setter 方法。
JavaBean的属性应该都设为私有属性,然后通过 getter 和 setter 方法来对其进行读写。
一个只读的属性只提供 getPropertyName() 方法,一个只写的属性只提供 setPropertyName() 方法。
| 方法 | 描述 |
|---|---|
| getPropertyName() | 举例来说,如果属性的名称为 myName,那么这个方法的名字就要写成 getMyName() 来读取这个属性。这个方法也称为访问器。 |
| setPropertyName() | 举例来说,如果属性的名称为 myName,那么这个方法的名字就要写成 setMyName()来写入这个属性。这个方法也称为写入器。 |
JavaBean 程序示例
package com.example;
public class StudentsBean implements java.io.Serializable
{
private String firstName = null;
private String lastName = null;
private int age = 0;
// 无参构造方法
public StudentsBean() {
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public int getAge(){
return age;
}
public void setFirstName(String firstName){
this.firstName = firstName;
}
public void setLastName(String lastName){
this.lastName = lastName;
}
public void setAge(int age) {
this.age = age;
}
}