JavaBean 是可以重复使用的一个组件,是遵守 JavaBean API 规范的 Java 类。
一般情况下,JavaBean 要满足以下要求:
Java 之父 James Gosling 在设计 Java 语言,为 Java 组件中封装数据的 Java 类进行命名时,看到了桌子上的咖啡豆,于是灵机一动,就把它命名为“JavaBean”,bean 翻译为“豆、豆子”。
在程序中,开发人员所要处理的无非是业务逻辑和数据,而这两种操作都可以封装成 JavaBean,一个应用程序中会使用很多的 JavaBean。由此可见,JavaBean 组件是应用程序的重要组成部分。
下面是一个 JavaBean 的简单示例,如下:
package entity;
import java.io.Serializable;
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private int id;
private String name;
public User() {
}
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
一个 JavaBean 可以有多个属性,属性应该是可以访问的,属性类型可以是任何合法的 Java 数据类型,包括自定义的类。
JavaBean 的每个属性通常都具有相应的 setter 和 getter 方法,setter 方法称为属性修改器,getter 方法称为属性访问器,如下:
属性访问器以小写的 get 作为前缀,后跟属性名,且属性名的第一个字母也要改为大写。例如:属性名称为 name,则方法名称为 getName( ),用来读取该属性值。
属性修改器以小写的 set 作为前缀,后跟属性名,且属性名的第一个字母也要改为大写。例如:属性名称为 name,则方法名称为 setName( ),用来设置该属性值。
JavaBean 的某个属性也可以只有 set 方法或 get 方法,这样的属性称之为只写或只读属性。
通过 getter 和 setter 方法访问 JavaBean,如下:
public static void main(String[] args) {
User u = new User();// 创建对象
u.setName("城东书院");// 设置对象的值
System.out.println(u.getName());// 输出“城东书院”
}