|
为什么叫 Java Bean?
想想 Java 的图标是什么?没错,是一杯咖啡。
想想咖啡的原料是什么?没错,是咖啡豆。

这么一看 Java Bean 代表什么就很清楚了,它是一种类,而且是特殊的、可重用的类。
Java language 是一种面向对象的编程语言,类是面向对象的编程语言的基础;可重用又是面向对象编程思想存在的意义之一,所以起名 Bean 很是形象。
什么是 Java Bean
先来看一段代码:
public class Person {
privete String name;
private int age;
public void setName(String newName) {
name = newName;
}
public String getName() {
return name;
}
public void setAge(int neweAge) {
age = newAge;
}
public int getAge() {
return age;
}
}很熟悉吧,这就是每个初学者刚开始写程序的时候写的代码,这个阶段我们听说不应该把每个属性都暴露给调用者,应该根据封装的思想将其封装成私有属性,通过 getter 和 setter 来操作。于是我们满心欢喜写下刚才的代码,并庆祝自己一只脚踏进了面向对象编程的大门。
刚入门时,我总是迷茫,自己写的这个东西有什么用,每次写的 Demo 仿佛只是个玩具,看完例程再去读各种各样的框架时,总是感觉会从入门到放弃。其实,我们在不经意间就已经写了一个 Java Bean 了。回首过往,将经历连成线、串成网,就会发现念念不忘,必有回响。
正如 Java 是咖啡的一种,不是所有的咖啡都是 Java 一样。并非所有的类都是 Java Bean,其是一种特殊的类,具有以下特征:
- 提供一个默认的无参构造函数。
- 需要被序列化并且实现了 Serializable 接口。
- 可能有一系列可读写属性,并且一般是 private 的。
- 可能有一系列的 getter 或 setter 方法。
根据封装的思想,我们使用 get 和 set 方法封装 private 的属性,并且根据属性是否可读写来选择封装方法。
Java Bean 的作用
仔细观察 Java Bean 可发现,其最大的特征是私有的属性,getter 和 setter 方法也都是绕着这些属性来设计的。
想象一下存在这样一个箱子,其内部被分割成几个格子,每个格子用来存放特定的物品,工人取出或者放入物品后封箱,然后叫了个快递把箱子发出去了。这个箱子就是 Java Bean 啊,取出、放入就是getter、setter,物品就是属性,封箱发出就是序列化和传输。
那么 Java Bean 的作用也就是把一组数据组合成一个特殊的类便于传输。 Java Bean 可以用在图形界面的可视化设计、JSP 封装数据保存到数据库、Android AIDL 跨进程通信,Spring框架等场景中。 |
|