Netbeans平台: 文件的识别

很多应用程序通过用户界面来显示目录和文件, Netbeans用户界面是通过系统文件系统中的虚拟文件来创建的,很多Netbeans的用户界面其实是系统文件系统的一个视图.而系统文件系统其实是运行时根据解析所有模块的层次文件layer.xml构建的.

基本的机制是:特定的,已知的文件类型分别具有自己的图标,菜单选项和行为或者动作.

Netbeans如何知道这些文件的类型呢?

答案是:这些文件其实或者是FileObject包装起来的文件(java.io.File),或者是配置文件(通过包装模块的XML文件). 真正你看到的其实是节点. 节点提供文件相关的动作,名字等其他事情. 而在节点和文件对象之间的是数据对象:

Node <---> DataObject <---> FileObject

                            |-------- DataObject知道文件的类型,不同的文件扩展名对应不同的类型的DataObject(由实现文件类型支持接口的模块提供), 例如图片模块能够识别和打开gif,png格式的图片

识别不同文件类型的模块安装了不同的 DataLoader数据装载器. 数据装载器是文件类型特异的数据对象的工厂类.

所以当一个目录被打开时,Netbeans系统就会询问每个已知的数据装载器: 你认识这个文件类型么? 第一个回答认识的数据装载器负责创建对应的数据对象.实际上这个识别过程会有一些优化过程在里面.但是基本流程是这样的.

为了实际显示每个文件的一些数据,Netbeans系统会调用每个对应数据对象的getNodeDelegate()方法, 这些节点是你在Netbeans用户界面看到的真正的东西.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值