黑马程序员技术交流社区

标题: 有关javabean的一堆问题? [打印本页]

作者: 于海生    时间: 2012-1-5 17:29
标题: 有关javabean的一堆问题?
本帖最后由 于海生 于 2012-1-6 09:21 编辑

什么是javabean?javabean遵循什么样的编写规范?bean组建的工作机制有哪些?javabean有哪些编写要求?
javabean的命名规范有哪些?存放javabean的包有什么特点?javabean的结构是什么?javabean的属性有哪些?
javabean的方法有哪些?问题比较多,请详解。
作者: 朱泽宇    时间: 2012-1-5 18:12
符合一种特殊规则的java类就是javabean  JavaBean 是一种基于 Java 的可复用的平台独立的软件组件,开发者可以在软件构造器工具中直接进行可视化操作,它是一种专门为当前软件开发者设计的全新的组件技术。
一个Bean不必非要继承特定的基类或接口;可视化的Bean必须继承的类是java.awt.Component,这样它们才能添加到可视化容器中去,非可视化Bean则不需要继承这个类。
一个Bean本质上就是一个Java类的代码,只是添加了所谓的自检和序列化(它们都可以由系统自动来完成),因此Bean实际就是一个普通的Java类。

呃其他的你看下下面这个链接吧、对你这些都有解释
http://feelingsea.blog.hexun.com/7293978_d.html
作者: 沈样    时间: 2012-1-5 18:12
不过你问这么多问题,我建议你还是先去看一下视频会明白很多,javabean我理解就是存储体里面以getXX(),setXX()方法体组成,主要存取数据的
作者: chocolate    时间: 2012-1-5 19:18
我直接无语了·····!JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自身机制发现和操作这些JavaBean 属性。
JavaBean是java类,属于某些特定的译码指导方针,并且扩展了适应性和范围,允许用户访问内部的属性和方法。通过这些,JavaBean类可以用于下列方法:   1. 在IDE中,JavaBean的功能允许应用开发者浏览其中的方法,即JavaBean是被编译的,并且无法利用原始的源文件。   2. 在 Remote Method Invocation(RMI) 的分布式风格中,这项功能听起来并不让人兴奋,但是在未来的包含企业版的JavaBean后,将改变这种情况。   3. 为了JavaBean的属性值和状态可以保存到磁盘上。
作者: 闫江龙    时间: 2012-1-5 20:03
太多了 同学在去过一遍视频吧  一遍不懂再来一遍 {:soso_e130:}{:soso_e100:}
作者: 于海生    时间: 2012-1-6 09:18
结贴!

Java Bean是基于Java的组件模型,由属性、方法和事件3部分组成。在该模型中,Java Bean可以被修改或与其他组件结合以生成新组件或完整的程序。它是一种Java类,通过封装成为具有某种功能或者处理某个业务的对象。因此,也可以通过嵌在JSP页面内的Java代码访问Bean及其属性。
Bean的含义是可重复使用的Java组件。所谓组件就是一个由可以自行进行内部管理的一个或几个类所组成、外界不了解其内部信息和运行方式的群体。使用它的对象只能通过接口来操作。


Java Bean实际上是根据Java Bean技术标准所指定Bean的命名和设计规范编写的Java类。这些类遵循一个接口格式,以便于使函数命名、底层行为以及继承或实现的行为,其最大的优点在于可以实现代码的可重用性。Bean并不需要继承特别的基类(Base Class)或实现特定的接口(Interface)。Bean的编写规范使Bean的容器(Container)能够分析一个Java类文件,并将其方法(Methods)翻译成属性(Properties),即把Java类作为一个Bean类使用。Bean的编写规范包括Bean类的构造方法、定义属性和访问方法编写规则。

在JavaBeans Version1.01 A规范中定义了该组件的5种重要机制:
内省(Introspection):组建可以发表其支持的操作和属性,同时也支持在其他组件中发现重复利用的对象库,如用户权限控制和电子邮件自动回复等。
通信(Communication):生成和收集组件的消息事件。
持续(Persistence):存放组件的状态。
属性(Properties):支持组件布局的控制,包括组件占用的空间和组件的相对位置。
定制(Customization):开发者可控制组件所需的改变机制。


编写Java Bean必须满足以下几点要求:
所有的Java Bean必须放在一个包(Package)中。
Java Bean必须生成public class类,文件名称应该与类名称一致。
所有属性必须封装,一个Java Bean类不应有公共实例变量,类变量都为private。
属性值应该通过一组存取方法(getXxx 和 setXxx)来访问:对于每个属性,应该有一个带匹配公用 getter 和 setter 方法的专用实例变量。
Java Bean 类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器,此构造器也应该通过调用各个属性的设置方法来设置属性的默认值。


Java Bean的命名规范如下:
包命名:全部字母小写。
类命名:每个单词首字母大写。
属性名:第一个单词全部小写,之后每个单词首字母大写。
方法名:与属性命名方法相同。
常量名:全部字母大写。


Java Bean的包是用户自己定义的。
每一个Java Bean源文件被编译成.class文件后,都必须存放在相应的文件夹下,存放这个.class文件的文件夹就是一个包。Java Bean的包必须存放在特定的目录下,在每个JSP引擎中都规定了存放Java Bean包的位置,不同的JSP引擎对Java Bean存放的位置有不同的规定,如在本书第16章介绍的Tomcat软件中,Java Bean的所有包都存放在WEB-INF/classes文件夹中。如果存在多级目录,则需要将.class文件所在目录的所有上级目录包含到包名称中,每一级目录之间用英文标点“.”隔开。例如下面代码:
package jsp.example.mybean;

代码是一个典型的Java Bean实例,我们用它来说明Java Bean的结构。
属性:即Java Bean类的成员变量,用于描述Java Bean对象的状态,对象属性值的改变触发事件,属性本身就是事件源。
方法:在Java Bean中,函数和过程统称为方法,通过方法来改变和获取属性的值。方法可以分为构造方法、访问方法和普通方法等。
事件:事件实际上是一种特殊的Java Bean,属性值的改变触发事件,事件激发相关对象作出反应,通过Java Bean注册对象事件监听者机制来接收、处理事件,它实现了Java Bean之间的通信。

Java Bean的属性与一般Java程序中所指的属性,或者说与所有面向对象的程序设计语言中对象的属性是一个概念,在程序中的具体体现就是类中的变量。属性分为四类,即单值(Simple)、索引(Index)、关联(Bound)和约束(Constrained)属性。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2