Java Beans 是什么?

本文内容如有错误、不足之处,欢迎技术爱好者们一同探讨,在本文下面讨论区留言,感谢。

简述

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

特性

优点
  • Bean 可以控制它的属性、事件和方法是否暴露给其他程序。
  • Bean 可以接收来自其他对象的事件,也可以产生事件给其他对象。
  • 有软件可用来配置 Bean
  • Bean 的属性可以被序列化,以供日后重用。
契约/约定
  • Bean 应该具有默认构造函数(无参数)。
  • Bean 应该提供 gettersetter 方法。
  • 使用 getter 方法读取可读属性的值。
  • 要更新值,应调用 setter 方法。
  • Bean 应该实现 java.io.serializable,因为它允许保存,存储和恢复正在使用的 JavaBean 的状态。
属性

对象的用户可以访问 JavaBean 属性。该功能部件可以是任何 Java 数据类型,其中包含您定义的类。它可能具有以下模式:读,写,只读或只写。JavaBean 功能通过两种方法访问:

  1. getter 方法的属性如下:
    • 必须 public 修饰
    • 返回类型不应为空
    • getter 方法应以单词 get 开头
  2. setter 方法的属性:
    • 必须公开性质
    • 返回类型应为空
    • setter 方法必须以单词 set 为前缀

例子

Student.java

public class Student implements java.io.Serializable 
{ 
private int id; 
private String name; 
public Student() 
    { 
    } 
public void setId(int id) 
    { 
        this.id = id; 
    } 
public int getId() 
    { 
        return id; 
    } 
public void setName(String name) 
    { 
        this.name = name; 
    } 
public String getName()
	{ 
        return name; 
    } 
} 

Test.java

public class Test { 
public static void main(String args[]) 
    { 
        Student s = new Student(); // object is created 
        s.setName("GFG"); // setting value to the object 
        System.out.println(s.getName()); 
    } 
}

输出:

GFG

引申

  • BeanInfoJava Beans 信息的管理
  • Introspector: 获取 BeanInfo 实例
  • PropertyDescriptors: 属性描述

参考资料

JavaBean class in Java

JavaBeans

What is a JavaBean exactly?(什么是JavaBean?

What is JavaBeans? Introduction to JavaBeans Concepts(什么是JavaBeans?JavaBeans概念简介

JavaBean class in Java(Java中的JavaBean类

发布了56 篇原创文章 · 获赞 14 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/feng_xiaoshi/article/details/103791949