ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java知识_JavaBeans

2020-01-16 17:36:41  阅读:390  来源: 互联网

标签:Java 知识 should Bean JavaBeans 方法 public JavaBean 属性


JavaBeans

JavaBeans

JavaBeans是Java中一种特殊的类,可以将多个对象封装到一个对象(bean)中。特点是可序列化,提供无参构造器,提供getter方法和setter方法访问对象的属性。名称中的“Bean”是用于Java的可重用软件组件的惯用叫法。

JavaBeans要求

Must implement Serializable.
It should have a public no-arg constructor.
All properties in java bean must be private with public getters and setter methods.

有一个public的无参数构造器。
属性可以通过get、set、is(可以替代get,用在布尔型属性上)方法或遵循特定命名规范的其他方法访问。
可序列化。

All properties private (use getters/setters)
A public no-argument constructor
Implements Serializable.

组成

一个JavaBean由3部分组成:
  (1) 属性(properties)
  JavaBean提供了高层次的属性概念,属性在JavaBean中不只是传统的面向对象的概念里的属性,它同时还得到了属性读取和属性写入的API的支持。属性值可以通过调用适当的bean方法进行。比如,可能bean有一个名字属性Name(String类型),这个属性的值可能需要调用String getName()方法读取,而写入属性值可能要需要调用void setName(String str)的方法。
  每个JavaBean属性通常都应该遵循简单的方法命名规则,这样应用程序构造器工具和最终用户才能找到JavaBean提供的属性,然后查询或修改属性值,对bean进行操作。JavaBean还可以对属性值的改变作出及时的反应。比如一个显示当前时间的JavaBean,如果改变时钟的时区属性,则时钟会立即重画,显示当前指定时区的时间。
  (2) 方法(method)
  JavaBean中的方法就是通常的Java方法,它可以从其他组件或在脚本环境中调用。默认情况下,所有bean的公有方法都可以被外部调用,但bean一般只会引出其公有方法的一个子集。由于JavaBean本身是Java对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean严格遵守面向对象的类设计逻辑,不让外部世界访问其任何字段(没有public字段)。这样,方法调用是接触Bean的唯一途径。
  但是和普通类不同的是,对有些Bean来说,采用调用实例方法的低级机制并不是操作和使用Bean的主要途径。公开Bean方法在Bean操作中降为辅助地位,因为两个高级Bean特性–属性和事件是与Bean交互作用的更好方式。因此Bean可以提供要让客户使用的public方法,但应当认识到,Bean设计人员希望看到绝大部分Bean的功能反映在属性和事件中,而不是在人工调用和各个方法中。
  (3) 事件(event)
  Bean与其他软件组件交流信息的主要方式是发送和接受事件。我们可以将bean的事件支持功能看作是集成电路中的输入输出引脚:工程师将引脚连接在一起组成系统,让组件进行通讯。有些引脚用于输入,有些引脚用于输出,相当于事件模型中的发送事件和接收事件。
  事件为JavaBean组件提供了一种发送通知给其他组件的方法。在AWT事件模型中,一个事件源可以注册事件监听器对象。当事件源检测到发生了某种事件时,它将调用事件监听器对象中的一个适当的事件处理方法来处理这个事件。 由此可见,JavaBean确实也是普通的Java对象,只不过它遵循了一些特别的约定而已。

特征

第一,其中JavaBean为共有类,此类要使用访问权限对public进行修饰,主要是为了方便JSP的访问;
Javabean
Javabean
第二,JavaBean定义构造的方式时,一定要使用public修饰,同时不能要参数,不定义构造方式时,Java编译器可以构造无参数方式;
第三,JavaBean属性通常可以使用访问权限对private进行修饰,此种主要表示私有属性,但是也只能在JavaBean内使用,在声明中使用public修饰的则被认为是公有权限,主要是方便同时JSP进行交互;
第四,使用setXXX()的方法以及getXXX()的方法得到JavaBean里的私有属性XXX数值;
第五,JavaBean–定要放在包内,使用package进行自定义,也可以放在JavaBean代码第一行;
第六,对于部署好的JavaBean修改是,一定要重新编译节码文件,同时启动Tomcat服务器,之后便能够生效

优点

Bean可以控制它的属性、事件和方法是否暴露给其他程序。
Bean可以接收来自其他对象的事件,也可以产生事件给其他对象。
有软件可用来配置Bean。
Bean的属性可以被序列化,以供日后重用。

JavaBean的任务:

(1) 一个开发良好的软件组件应该是一次性地编写,而不需要再重新编写代码以增强或完善功能。

(2) JavaBean组件在任意地方运行是指组件可以在任何环境和平台上使用,这可以满足各种交互式平台的需求。

(3)JavaBean组件在任意地方的重用说的是它能够在包括应用程序、其他组件、文档、Web站点和应用程序构造器工具的多种方案中再利用。

JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制(反射机制)发现和操作这些JavaBean 的属性。

分类

JavaBean可分为两种:一种是有用户界面(UI,User Interface)的JavaBean;还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。JSP通常访问的是后一种JavaBean。

规范

Syntax for setter methods:

It should be public in nature.
The return-type should be void.
The setter method should be prefixed with set.
It should take some argument i.e. it should not be no-arg method.

Syntax for getter methods:

It should be public in nature.
The return-type should not be void i.e. according to our requirement we have to give return-type.
The getter method should be prefixed with get.
It should not take any argument.
For Boolean properties getter method name can be prefixed with either “get” or “is”. But recommended to use “is”.

Junxuan==3 发布了21 篇原创文章 · 获赞 13 · 访问量 9309 私信 关注

标签:Java,知识,should,Bean,JavaBeans,方法,public,JavaBean,属性
来源: https://blog.csdn.net/weixin_38322326/article/details/103972743

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有