JavaBeans是Java中一种特殊的类,可以将多个对象封装到一个对象(bean)中。特点是可序列化,提供,提供getter方法和setter方法访问对象的属性。名称中的“Bean”是用于Java的可重用软件组件的惯用叫法。
优点
- Bean可以控制它的属性、事件和方法是否暴露给其他程序。
- Bean可以接收来自其他对象的事件,也可以产生事件给其他对象。
- 有软件可用来配置Bean。
- Bean的属性可以被序列化,以供日后重用。
JavaBeans規範
要成為JavaBean類別,則必需遵循關於命名、构造器、方法的特定規範。有了這些規範,才能有可以使用、復用、替代和連接JavaBeans的工具。
規範如下:
- 有一個public的無參數建構子。
- 屬性可以透過get、set、is(可替代get,用在布林型属性上)方法或遵循特定命名規則的其他方法存取。
- 可序列化。
package player;
public class PersonBean implements java.io.Serializable {
/**
- name 屬性(注意大小寫)
*/
private String name = null;
private boolean deceased = false;
/* 無參數建構子(没有參數) /
public PersonBean() {
}
/**
- name 屬性的 Getter方法
*/
public String getName() {
return name;
}
/**
- name 屬性的Setter方法
- @param value
*/
public void setName(final String value) {
name = value;
}
/**
- deceased 屬性的Getter方法
- 布林值屬性Getter方法的不同形式(這裡使用了is而非get)
*/
public boolean isDeceased() {
return deceased;
}
/**
- deceased 屬性的Setter方法
- @param value
*/
public void setDeceased(final boolean value) {
deceased = value;
}
}
TestPersonBean.java:
import player.PersonBean;
/**
- TestPersonBean类
*/
public class TestPersonBean {
/**
- PersonBean 類型測試方法的main函数
- @param ARGS
*/
public static void main(String[] args) {
PersonBean person = new PersonBean();
person.setName("張三");
person.setDeceased(false);
// 輸出: "張三[活著]"
System.out.print(person.getName());
System.out.println(person.isDeceased() ? " [已故]" : " [活著]");
}
}
testPersonBean.jsp;
姓名:
已故與否?
輸入姓名:
選擇選項:
活著
已故
参考文献
外部連結
- [http://download.oracle.com/javase/tutorial/javabeans/ Oracle's JavaBeans tutorials]
- [http://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html JavaBeans specification]
评论 (0)