JavaBean与Java的Class的关系

2016-02-19 20:07 1 1 收藏

想要天天向上,就要懂得享受学习。图老师为大家推荐JavaBean与Java的Class的关系,精彩的内容需要你们用心的阅读。还在等什么快点来看看吧!

【 tulaoshi.com - 编程语言 】

     要说Bean,就得提到Introspection和Reflection,还有“动态”。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,答应改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态语言。

  尽管在这样的定义与分类下Java不是动态语言,它却有着一个非常突出的动态相关机制(其实C++也是这样的动态机制):Reflection。这个字的意思是“反射、映象、倒影”,用在Java身上指的是我们可以于运行时加载、探知、使用编译期间完全未知的classes。换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实体、或对其fields设值、或唤起其methods。这种“看透class”的能力(the ability of the program to examine itself)被称为introspection(内省、内观、反省)。Reflection和introspection是常被并提的两个术语。Java中的类都有这样的特点(有时间的话,可以看看Java的Class这个类)。

  而JavaBean,首先是JAVA的一个类Class,然后再具有Bean的特点。简单的说,就是符合一定规范(getter和setter的命名与变量名一致)的类。这样的类能够通过Java的reflexion机制,自动获取属性的值。常见的就是一些方法的命名getXXX(),setXXX(),一些事件接收者的注册要遵守一定的规范。

  由于JavaBean也是Java的一个Class类,所以JavaBean也有introspection和Reflection的性质。前者Introspection就是类的get和set方法,也就是类设定和获取自身属性值的方法。而后者Reflection就是java程序在运行中检查自己包含对象的能力,即可以在加载对象后获得对象属性和方法的名称,并且通过调用前者获得一个值。还有一个是Bean的Methode和Interface的命名具有Design Pattern的特点(这个也是可以忽略的。)

  bean 提出来的目的是组件化,跟其他程序语言比如 Delphi 中提出的控件是一样的, 不过它给出了一些规范, 假如大家都遵守了, 就可以使用同一种机制来调用不同的控件。只是为了更方便重用性更强而已,也不是专门为 web service 而提出了。相比之下,GUI类的 bean 跟一般概念上的组件更相象。另外Bean的class比一般的class有许多规范与限制,所以它们的实现机制不一样。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  换句话说,JavaBeans其实就是一般的JAVA代码片段,只不过是考虑了代码的重用而变成一些“组件化”了的java程序代码,且依据一定的模式制作。

  JavaBean在本质上和一般的类的确没差别。但在思想和使用上有些不同。如:JavaBean通过setXXX(),getXXX()等方法提供操作Bean中数据的方法,这样在Web应用程序开发时,页面设计者可以不用再和java代码打交道直接通过Html标签就可以完成相应数据的操作。这时Bean设计的目的,就在于将页面设计者和程序开发者隔离。至于重用性,我倒感觉和普通类差别不大。


来源:https://www.tulaoshi.com/n/20160219/1622814.html

延伸阅读
您现在可能已在使用 JavaBean,但还不了解它。假如有支持 Java 的浏览器,那么,在桌面上使用 JavaBean 就没有限制。使用的 Web 页面可以将 bean 作为小应用程序的一部分。您很快就会和作为浏览器可视部分的 JavaBean 交互,然后,那些 JavaBean 将与服务器上的 EJB 接口。这种能力也可以扩展到因特网和内部网。 JavaBean 和 Serv...
标签: Web开发
在前几日的文章中我提到过XHTML的重要性,在那篇文章中我讲了为什么说XHTML结构重要,重视XHTML结构的好处。但是那篇文章从开发的效率入手,并没有深入细节,而今天的这篇文章是讲XHTML中的细节部分的,可以说是上一篇的续述。这篇续述的主题就是ID与CLASS怎么用,在标题中有提及使用原则与技巧,这里的使用原则与技巧是我的经验总结,并非摘自...
标签: Java JAVA基础
  虽然你可以在小型指令文件里放入一大块的程序代码,但是大多数的Java程序代码是属于可以重复使用的组件,称为JavaBean。JavaBean就跟ActiveX控件一样:它们提供已知的功能,并且是为了可随时重复使用的目的而设计的。 JavaBean的价值在于它可以经由一组特性来使用,而这些特性则提供对JavaBean设定的存取。以人来作范例,此人就是J...
在微笑中培养健康宝宝 美国心理学家日前提供了三组数据3周岁美国孩子的微笑要比同龄的中国孩子多55.6%;与美国孩子相比,中国孩子发生内向孤僻、焦虑和社交问题的比例分别高出92%、31.3%和138%。中国父母在易发怒程度上要比美国父母高出26%,在严厉程度上则要超出52.2%。面对这么具体的数字,你有何感想? 你和孩子的心灵有空吗用一个典型的...
胎教与优生的关系 tulaoshi 在当今这个社会,妈妈们都想让自己的宝宝赢在起跑线上。宝宝是否聪明与遗传和胎教有关,怎么样的胎教是合理的?   现代社会,人们越来越重视优生优育,遗传和幼儿胎教是优生的有机组成部分。优生胎教和怀孕胎教优生指导成为很多孕妈妈关注的话题。优生胎教是指改善人们...

经验教程

631

收藏

84
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部