您的位置:首页 >> 编程开发 >> Java >> JavaBeans >> 正文
RSS
 

JavaBean10111

http://www.rdxx.com 01年11月17日 11:08 互联网 我要投稿

关键词: JavaBean
  • 声明一对公有的getter和setter方法,用于读取属性值,并设定新值。
  • 记住:要对这些方法命名,规则是:名称前面为“get”和“set”,后面是变量的名称,而且第一个字母要大写。

    如果你已经正确地为新属性定义了get和set方法,那么一旦Bean在BeanBox中被打开,你添加到Bean中的新属性就会出现在属性表中,通过自检机制, BeanBox就会找到同属性名相匹配的get和set 方法,并在属性表中显示出属性来。

    下一步,我们将看看如何把其他种类的属性添加到Bean中,并且让Bean生成事件以及监听事件的发生。

    JavaBeans和包

    通常情况下,相对于其他Bean,不管是购自第三方还是你自己创建的Bean,应该安装在一个较为独立的目录中。Java的 packages(包)可以帮助你完成这个工作。 Java的包可以把相互关联的类组织在一起。

    Beans放到包中

    把Bean放到包中,需要完成下列步骤:

    1. 在你文件的开始部分,加入包语句。包语句必须位于文件的第一行。
      一个包语句定义了一个目录路径,该目录是用来存放编译后的Bean类文件的,其路径是相对于当前工作目录的,子目录是通过句点分隔的,而非斜杠。

      例如,如果已编译过的Bean文件放在目录 \acme\Beans 中,就把下面一行加入到你的代码文件的开始部分:

      package acme.Beans;

      Acme03Bean是个带有颜色属性的简单的JavaBean, 它使用了包。本例中,你必须创建一个目录结构,以便Java编译器可以把所生成的类文件放到合适的位置。也要为放到包中的这些类文件定义包的名称。

    2. 一旦某个程序要使用包中的类,就要在程序中调入该包。
      生成JAR文件时,要把包和类的全名都要包含进去,以便把属于包的Bean也包含进去。(JAR文件是Java  Archive files的缩写。)对于那些由多个文件生成的Bean来说, JAR 文件是个理想的包装机制,JAR 文件既可以包含类文件,也可以同时包含图像文件。

    3. 在当前的工作目录下,为acme.Beans包创建合适的目录结构。首先创建两个单独的目录,一个用于Java源文件,另外一个用于Java类文件:
      mkdir -p ./src/acme/Beans
      mkdir -p ./classes/acme/Beans

    4. 把Java源文件拷到源目录中。在UNIX系统中:
      cp -p Acme03Bean.java ./src/acme/Beans

    当编译该JavaBean时,务必把编译好的类文件存放到类文件目录中,所以如果你使用makefile来进行编译,就要修改相应的makefile。

    把标签添加到Beans中

    在本课的这一节中,把一个实例变量加到AcmeBean中。该新的变量存放的是该Bean的String标签值。 (该Bean完整的源代码请见Acme04Bean )

    添加标签

    1. 定义一个称为Label的私有变量:

      private String label;

    2. 一旦定义好一个实例变量, 通过Bean的构造函数赋给它一个缺省值,同时设置修饰label的字体值。把如下两行添加到构造函数中去:

      this.label="Bean"
      setFont(new Font("Dialog"; Font.PLAIN, 12));

      这样,该Bean就起到按钮的作用。你可以在构造工具(例如BeanBox工具)中对label进行设置。

    3. 如果打算在设计阶段能够设置label,让label成为Bean的一个属性,只要把get和set方法添加到Bean类中即可。

      public String getLabel() {
                return label; 
      }

      public void setLabel(String newLabel) {
                String oldLabel = label;
                label = newLabel;
      }


      该方法同添加颜色属性时所要做的事情是类似的。

    4. 之后,通过在paint方法的最后加上如下几行代码,可以把按钮的效果做得更为逼真。
    g.fillArc(5, 5, 30, 30, 0, 360);g.fillArc(25, 5, 30, 30, 0, 360);g.setColor(Color.blue);int width = size().width;int height = size().height;FontMetrics fm = g.getFontMetrics();g.drawString(label,  (width - fm.stringWidth(label)) / 2,           (height + fm.getMaxAscent() - fm.getMaxDescent())/ 2);

     
     
    标签: JavaBean 打印本文
     
     
      相关资讯
    RSS
     
     
     
      热点搜索
     
     
     



    Valid XHTML 1.0 Transitional
    Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
    收藏本页
    收藏本站