Java bean的安装程序是否允许返回此值?

Java bean的安装程序是否允许返回此值?,第1张

Java bean的安装程序是否允许返回此值?

关于JavaBeans规范有很多误解。

它存在的主要原因是统一的Java“组件”模型。这是一种使用反射与Java对象进行编程交互的方式。该API本身名为JavaBeans
Introspection
。请看一下示例用法,您将比普通Java程序员了解更多。

自省API可用于以统一的方式 *** 作GUI元素。您的组件将其属性公开为一对getter和setter,以便可以在运行时在GUI构建器的属性表上对其进行发现和 *** 作。

因此,我认为混合使用流畅的API和JavaBeans
Spec是不可行的。那是两个完全不相关的概念,并且可以互相干扰。当方法签名不同(返回类型)时,JavaBeans自省可能不起作用。

看一下这个例子(摘自链接教程):

public class SimpleBean{private final String name = "SimpleBean";private int size;public String getName(){    return this.name;}public int getSize(){    return this.size;}public void setSize( int size ){    this.size = size;}public static void main( String[] args )        throws IntrospectionException{    BeanInfo info = Introspector.getBeanInfo( SimpleBean.class );    for ( PropertyDescriptor pd : info.getPropertyDescriptors() )        System.out.println( pd.getName() );}}

本示例创建一个非可视Bean并显示从BeanInfo对象派生的以下属性:

  • 名称
  • 尺寸

您可能想看看将

void
返回类型更改为其他任何类型时会发生什么。我这样做了,结果是一样的。那么,这是否意味着它被允许?

恐怕不行。JavaBeans规范对这些方法签名非常严格。碰巧的是实现是宽容的。但是,我不建议将流利的接口与JavaBeans混合使用。您不能真正依靠它,如果发现现在可行,将来也将如此。

但是,从另一方面看,您似乎没有充分使用JavaBean。只有getter / setter方法对。如何实现和设计API取决于您。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5486996.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存