Beans Development Kit (BDK)分析(二)

原创 2003年06月02日 10:50:00
 

.框架分析

       首先要对该源代码的框架作分析,先要得到源代码,该源代码的下载地址是(http://java.sun.com/beans/)。目录介绍:

l         beanbox目录:BeaBox的源程序,class文件,支持lib,以及执行文件和编译配置等帮助文件。

l         demo目录:用来演示JavaBean的一些例子源代码文件。

l         doc目录:关于BDK的文档和API手册。

l         jars目录:存放需要加载到工具条的JavaBeanjar文件。

l         lib目录:支持库方法跟踪的jar文件。

l         GNUmakefile文件:编译配置文件。

l         infobus.jar文件:支持infobusjar文件。

l         LICENSE.html文件:许可证。

l         Makefile文件:编译配置文件。

l         README.html文件:自述文件。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

文件结构

目录结构是以下所示:

源代码目录树:

├─sun

  ├─beanbox

    └─simpleresource

└─sunw

    ├─beanbox

    ├─demo

      ├─buttons

      ├─classfile

      ├─delegator

      ├─encapsulatedEvents

      ├─jelly

      ├─juggler

      ├─methodtracer

      ├─misc

      ├─molecule

      ├─quote

      ├─select

      ├─sort

      ├─test

      └─transitional

└─wrapper

 

类介绍

       为了理解的方便,首先对每一个类的大概功能作一个描述,先让大家有初步的了解。针对要讲解的是框架,所以不介绍demo目录下面的类的功能。

1.         sun.beanbox

l         AboutDialog.java      BeanBoxAbout Dialog

l         AppletClassGenerator Applet自动产生Applet类代码

l         AppletGenerator.java 由组合的Beans产生Appletjar文件

l         BeanBox.java         作为JavaBean的容器

l         BeanBoxFrame.java     作为一个顶级的frame来容纳Beanbox,管理菜单和跟踪当前焦点的Bean

l         ClassCompiler.java   执行编译Java源代码的类,形如sun.tools.javac.*的功能

l         CustomizerDialog.java    作为一个普通的组件编辑器,封装了一个Dialog

l         DoOnBean.java        在创建Bean的时候要执行的动作的接口

l         EditedAdaptor.java   属性编辑适配器,实现了PropertyChangeListener接口

l         ErrorDialog.java      抛出一个模态的错误Dialog,继承了MessageDialog

l         EventTargetDialog.java   用来为焦点Bean定制事件的对话框

l         FileExtension.java   用来过滤文件的类,实现了FilenameFilter接口

l         HookupManager.java   管理事件源bean和目标bean的目标方法之间的钩子,将为每一个钩子都产生一个类,作为适配器编译加载到ClassLoader

l         IBSupport.java        使用该类来支持infoBus机制来和bean通信

l         IndentedStream.java  这个工具类是用来产生源代码文件的

l         InputStreamProducer.java 该接口按需提供一个输入流

l         JarAccess.java        该类实现了一个简单的使用jar文件格式来创建文件的工具

l         JarEntrySource.java  用于请求创建jar文件

l         JarInfo.java         代表一个载入的jar文件,包含该文件的信息

l         JarLoader.java        读取jar文件的内容

l         MakeAppDlg.java       要求制作Applet的对话框

l         Manifest.java        代表jar文件的Manifest信息

l         MessageDialog.java   弹出提示信息的对话框类

l         MessageHeader.java   定义消息头部

l         ObjectInputStreamLoader.java    作为ObjectInputStream的子类,代理为存在的ClassLoader加载类

l         OurLabel.java        用一个字符串代表一个不可见的bean

l         PropertyCanvas.java  支持在一个Canvas上画出一个属性值

l         PropertyDialog.java  用一般的编辑器来持属性编辑器

l         PropertyHookupManager.java  用来管理属性之间的钩子,以便于一个对象上属性的变化能够传递给和它相关的属性

l         PropertyNameDialog.java  属性对话框用来查找一个给定的源对象的属性

l         PropertySelector.java    用来支持属性编辑器的标签选择

l         PropertySheet.java   属性编辑表格,列出了可以编辑的所有属性

l         PropertyText.java    用来支持属性编辑器的文本输入

l         Report.java          从一个给定的Bean类提取内部信息的报告

l         SimpleClassLoader.java   继承了ClassLoader,被JarLoader用来载入类和资源

l         StartFrame.java       BeanBox开始的时候用来显示一个欢迎信息

l         Timer.java           工具类,用于内部的时间操作

l         ToolBox.java         显示可用于BeanBoxJavaBean的图表和ID

l         WindowCloser.java    工具类,用于捕获目标窗口的关闭事件

l         Wrapper.java         用于跟踪在设计窗口的每个BeanBeanBox中的相关状态

l         WrapperEventInfo.java    事件监听器的钩子信息

l         WrapperPropertyEventInfo.java   继承了WrapperEventInfo类,用于当连接到一个具体的属性

2.         sun.beanbox.simpleresource

l         Handler.java         继承了URLStreamHandler类,用于资源的请求

l         SimpleResourceConnection.java   继承了URLConnection类,用于资源的连接和获取

3.         sunw.beanbox

l         AppletSupport.java   在产生的Applet中,需要支持Applet的实例化

l         PropertyHookup.java  管理属性间的钩子信息,以便于属性变化能够通知相关的属性

4.         sunw.wrapper

l         BeanWrapper.java     继承了Applet类,是为了支持那些本身就不是AppletBean,以便于它们可以直接在HTML文档中显示

 

基本框架

       我针对BDK的框架的理解,划出了一下结构图:

 

       其程序运行界面如下:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />CSDN_Dev_Image_2003-6-2956190.png

 

Java SE Development Kit的下载、安装及环境变量的配置

目前Java SEDevelopment Kit最新的版本为Java SE Development Kit 8u112(以下简称JDK)。下面将逐步介绍该版本Java SDK的下载、安装步骤及其环境变...
  • BinGISer
  • BinGISer
  • 2016年11月28日 11:11
  • 4690

Java学习——Ubuntu下jdk的安装以及Java环境的配置

第一步、下载 到官网下载jdk,在Java SE Development Kit 7uXX里面,把Accept License Agreement 打勾,这样才能下载jdk,然后我们选择对应的Ubu...
  • hcbbt
  • hcbbt
  • 2013年09月18日 17:48
  • 5929

手动创建、构建并安装android项目

创建项目 创建一个项目,命名为HelloWorld
  • zhangzeyuaaa
  • zhangzeyuaaa
  • 2014年10月13日 17:45
  • 4523

【Google Glass开发平台】谷歌眼镜开发工具包(GDK)快速...

在您开始使用谷歌眼镜开发工具包(GDK)之前,你需要对安卓开发有中等或者更深入的理解和认识。 这个快速入门教程将教你如何把GDK安装在你的系统环境上,以及教会你安装你的第一个谷歌眼镜应用。关于开...
  • yuzhongchun
  • yuzhongchun
  • 2014年04月21日 14:40
  • 4888

使用Visual Studio 2010 创建简单的Silverlight应用程序

Silverlight是创建动态的引人的RIAs(Rich Internet Application)的新方法。这里教你创建简单的Silverlight应用程序。...
  • u012025054
  • u012025054
  • 2014年06月25日 22:22
  • 1207

路由器逆向分析------firmware-mod-kit工具安装和使用说明

本文博客地址:http://blog.csdn.net/qq1084283172/article/details/68061957 一、firmware-mod-kit工具的安装 firmwa...
  • QQ1084283172
  • QQ1084283172
  • 2017年03月29日 17:27
  • 3515

spring加载beans找不到声明

【转】Spring启动异常: cvc-elt.1: Cannot find the declaration of element 'beans' 今天把在线聊天室代码改了下, 想启动应用测试...
  • cao478208248
  • cao478208248
  • 2014年05月03日 17:41
  • 7144

Spring中beans标签定义

tag -->
  • tanga842428
  • tanga842428
  • 2016年11月08日 19:28
  • 718

React—Native创建项目时遇到的坑(Could not connect to development server),你需要收藏

最新准备自学一些React—Native的东西,然后在配置环境的时候遇到了很多坑,出现了很多问题。 由于 Could not connect to development server是我深恶痛绝...
  • lixuce1234
  • lixuce1234
  • 2017年06月02日 15:39
  • 1163

Spring学习笔记(十七):spring配置文件详解以及beans:beans标签

  • Jalon2015
  • Jalon2015
  • 2016年01月28日 10:04
  • 5937
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Beans Development Kit (BDK)分析(二)
举报原因:
原因补充:

(最多只允许输入30个字)