JavaBean 101,第二部分(二)
作者: Beth Stearns / 廖铮
日期: 2001年03月08日
创建一个Bean
如果你要学会创建一个Bean,最简单的方法莫过于先学会创建一个基本的Bean,之后添加属性到Bean中。最简单的Bean必须实现java.io.Serializable接口。事实上,在缺省情况下,任何实现Serializable 接口的Java类就是一个最小的JavaBean。例如,一个仅仅显示红色矩形的简单的Bean,就是从AWT组件java.awt.Canvas中扩展出来的。 该Bean自身只需要定义一个构造函数,以便用来设置矩形的大小,并且把该矩阵的背景颜色设置为红色。
创建一个简单的Bean
让我们从创建一个简单的Bean开始吧,这个Bean在其构造函数中定义了一个已知尺寸的矩形,其背景色为红色。在红色矩形内部, 有一个绿色小矩形。除了定义了构造函数之外,该Bean还包括了一个简单的称为color(颜色)的属性,其初值为绿色。注意: 该Bean中的color属性被说明为private(私有)。
Bean包括两个public(公有)方法,一个用来获取属性值,另一个用来设置属性值。因为color属性是private(私有的),它不能直接被外界访问,所以只能通过这些getter和setter方法来访问。如下为名为SimpleBean的JavaBean的源代码:
import java.awt.*;
import java.io.Serializable;
public class SimpleBean extends Canvas
implements Serializable {
private Color color = Color.green;
//getter method
public Color getColor() {
return color;
}
//setter method
public void setColor(Color newColor) {
color = newColor;
repaint();
}
//override paint method
public void paint (Graphics g) {
g.setColor(color);
g.fillRect(20,5,20,30);
}
//Constructor: sets inherited properties
public SimpleBean() {
setSize(60,40);
setBackground(Color.red);
}
}