清华面向对象程序设计:第12章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
每个属性时需要给出下标索引。 获取或设置这类属性有两种基本方式
–获取或设置整个数组的内容; –获取或设置某个特定元素的内容.
定义Index属性的基本格式
(1)获取或设置整个数组的get/set定义格式:
Public<PropertyType>[] get<PropertyName>() Public void set<PropertyName>(<PropertyType>[] value)
例:设置组件大小及背景颜色的JavaBean
一个最简单的JavaBean
import java.awt.*; import java.io.Serializable; public class SimpleBean extends Canvas implements
Serializable {
public SimpleBean() {
利用可视化的方式将每个JavaBean 属性、 方法和事件的相关信息展示给用户,可以 直接地观察到它们的状态。
属性特征
属性是JavaBean外观及行为特征的描述 用户可以在设计阶段对它进行定制。 对于每个JavaBean,可以通过软件构造
工具进行检测并以可视化的方式提供给 用户。
定制特征
import java.awt.*; import java.io.Serializable; public class SimpleBean extends Canvas implements
Serializable {
private Color color = Color.green; //Simple型属性
(2)获取或设置数组中某个特定元素的get/set 定义格式:
public <PropertyType> get<PropertyName>(int index) public void set<PropertyName>(int index, <PropertyType>
value)
Bound(关联)属性
JavaBean应该具有的特征
1. 自检特征 2. 属性特征 3. 定制特征 4. 事件特征 5. 持久性特征 6. 功能分解特征
自检特征Javຫໍສະໝຸດ Bean可以通过下面两种途径进行自我 检测:
在对JavaBean功能进行命名时,严格地遵 循命名规范,又称为设计模式,通过名称 就可以知道它的基本功能。
持久性特征
持久性使得JavaBean的状态可以被永久 性地保存起来
修改了某个JavaBean的属性之后,一定 要将其永久性地保存,以便日后使用时 JavaBean将处于最新版本的状态。
功能分解特征
JavaBean的方法与Java的成员方法一样,不仅 可以由其他的JavaBean调用,也可以由本地环 境调用。
表示组件之间的关联特性。 当JavaBean组件的属性发生改变,要将这种变
化通知给对此感兴趣的监听器。 一个包含Bound属性的JavaBean组件需要维护一
public Color getColor() { //获取color return color;
}
public void setColor(Color newColor) //设置color{ color = newColor; repaint(); } public void paint(Graphics g) { //设置颜色并绘制一个用color颜色填充的矩形
在默认情况下,JavaBean的成员方法都是 public方法。
每个JavaBean都应该有独特的功能,这样才符 合组件技术的设计宗旨。
12.2 JavaBean结构
JavaBean 类似于Java程序,是一个非常简 单且严格遵守某种规则的类,每个 JavaBean都有不同的功能。
JavaBean 属 性 、 事 件 和 方 法 是 构 成 JavaBean的三大内部构件。
g.setColor(color); g.fillRect(20, 5, 20, 30); } public SimpleBean() //设置组件的大小及背景颜色 { setSize(60,40); setBackground(Color.red); } }
Index(索引)属性
由多个属性构成的成员变量数组 定义时需要有一对方括号[],访问其中的
第12章 JavaBean编程技术
12.1 JavaBean概述
JavaBean API为应用Java程序设计语言 编写软件组件提供了可靠保证,这些组 件可以通过可视化的应用程序构造工具 方 便 地 嵌 入 到 Applet 应 用 程 序 、 Application 应 用 程 序 或 复 合 组 件 中 , JavaBean 组 件 又 被 简 称 为 Bean 。 JavaBean 是 JDK1.1 的 核 心 概 念 , 任 何 支 持 Java1.1 的 浏 览 器 或 工 具 都 支 持 JavaBean。
setSize(60,40); setBackground(Color.red); } }
1.JavaBean属性
描述了组件的静态特征,包括外观形状、颜色 等
通过专用的方法对这些属性进行访问 按其作用分为4个类别:
Simple(简单) Index(索引) Bound(关联)Constrained(约束)。
Simple(简单)属性
每个Simple型属性对应一个成员变量及一 对用于获取或设置(get/set)的public成 员方法,基本格式为:
public <PropertyType> get<propertyNaem>() public void set<propertyNaem>()
例:包含一个Simple型属性Color的 JavaBean组件
在设计阶段可以利用属性编辑器或 JavaBean定制器对其进行重新定制。
事件特征
JavaBean利用事件实现与其他JavaBean 的沟通。
希望接收事件的JavaBean要对它所关注 的事件引发者进行注册。
软件构造工具能够检查每个JavaBean, 以便判定它能够引发哪些事件或能够处 理哪些事件。
–获取或设置整个数组的内容; –获取或设置某个特定元素的内容.
定义Index属性的基本格式
(1)获取或设置整个数组的get/set定义格式:
Public<PropertyType>[] get<PropertyName>() Public void set<PropertyName>(<PropertyType>[] value)
例:设置组件大小及背景颜色的JavaBean
一个最简单的JavaBean
import java.awt.*; import java.io.Serializable; public class SimpleBean extends Canvas implements
Serializable {
public SimpleBean() {
利用可视化的方式将每个JavaBean 属性、 方法和事件的相关信息展示给用户,可以 直接地观察到它们的状态。
属性特征
属性是JavaBean外观及行为特征的描述 用户可以在设计阶段对它进行定制。 对于每个JavaBean,可以通过软件构造
工具进行检测并以可视化的方式提供给 用户。
定制特征
import java.awt.*; import java.io.Serializable; public class SimpleBean extends Canvas implements
Serializable {
private Color color = Color.green; //Simple型属性
(2)获取或设置数组中某个特定元素的get/set 定义格式:
public <PropertyType> get<PropertyName>(int index) public void set<PropertyName>(int index, <PropertyType>
value)
Bound(关联)属性
JavaBean应该具有的特征
1. 自检特征 2. 属性特征 3. 定制特征 4. 事件特征 5. 持久性特征 6. 功能分解特征
自检特征Javຫໍສະໝຸດ Bean可以通过下面两种途径进行自我 检测:
在对JavaBean功能进行命名时,严格地遵 循命名规范,又称为设计模式,通过名称 就可以知道它的基本功能。
持久性特征
持久性使得JavaBean的状态可以被永久 性地保存起来
修改了某个JavaBean的属性之后,一定 要将其永久性地保存,以便日后使用时 JavaBean将处于最新版本的状态。
功能分解特征
JavaBean的方法与Java的成员方法一样,不仅 可以由其他的JavaBean调用,也可以由本地环 境调用。
表示组件之间的关联特性。 当JavaBean组件的属性发生改变,要将这种变
化通知给对此感兴趣的监听器。 一个包含Bound属性的JavaBean组件需要维护一
public Color getColor() { //获取color return color;
}
public void setColor(Color newColor) //设置color{ color = newColor; repaint(); } public void paint(Graphics g) { //设置颜色并绘制一个用color颜色填充的矩形
在默认情况下,JavaBean的成员方法都是 public方法。
每个JavaBean都应该有独特的功能,这样才符 合组件技术的设计宗旨。
12.2 JavaBean结构
JavaBean 类似于Java程序,是一个非常简 单且严格遵守某种规则的类,每个 JavaBean都有不同的功能。
JavaBean 属 性 、 事 件 和 方 法 是 构 成 JavaBean的三大内部构件。
g.setColor(color); g.fillRect(20, 5, 20, 30); } public SimpleBean() //设置组件的大小及背景颜色 { setSize(60,40); setBackground(Color.red); } }
Index(索引)属性
由多个属性构成的成员变量数组 定义时需要有一对方括号[],访问其中的
第12章 JavaBean编程技术
12.1 JavaBean概述
JavaBean API为应用Java程序设计语言 编写软件组件提供了可靠保证,这些组 件可以通过可视化的应用程序构造工具 方 便 地 嵌 入 到 Applet 应 用 程 序 、 Application 应 用 程 序 或 复 合 组 件 中 , JavaBean 组 件 又 被 简 称 为 Bean 。 JavaBean 是 JDK1.1 的 核 心 概 念 , 任 何 支 持 Java1.1 的 浏 览 器 或 工 具 都 支 持 JavaBean。
setSize(60,40); setBackground(Color.red); } }
1.JavaBean属性
描述了组件的静态特征,包括外观形状、颜色 等
通过专用的方法对这些属性进行访问 按其作用分为4个类别:
Simple(简单) Index(索引) Bound(关联)Constrained(约束)。
Simple(简单)属性
每个Simple型属性对应一个成员变量及一 对用于获取或设置(get/set)的public成 员方法,基本格式为:
public <PropertyType> get<propertyNaem>() public void set<propertyNaem>()
例:包含一个Simple型属性Color的 JavaBean组件
在设计阶段可以利用属性编辑器或 JavaBean定制器对其进行重新定制。
事件特征
JavaBean利用事件实现与其他JavaBean 的沟通。
希望接收事件的JavaBean要对它所关注 的事件引发者进行注册。
软件构造工具能够检查每个JavaBean, 以便判定它能够引发哪些事件或能够处 理哪些事件。