Java Bean把很多对象封装成一个,怎么样?
Java Bean encapsulates many objects into one,How?
我刚刚开始阅读有关 Java Beans 的文章,我有一个问题与 Topic 的问题完全相同。所以我重复问题:
在定义中说“java bean将许多对象封装到一个对象(Bean)中。”
1.What does "many objects" here mean?
和
2.How they are encapsulated into one object by java beans?
编辑:
in computing based on the Java Platform, JavaBeans are classes that encapsulate many objects into a single object (the bean).
编辑 2:
所有 classes 都具有多个属性和字段的能力。
如果封装许多对象意味着具有多个属性和字段,我不明白为什么他们提到这种能力是 java bean class.
的优势
首先要说清楚,Java中的每个Class
都扩展了类型Object
。 String
之类的东西也是 Object
.
"many objects" 是指我们如何使用不同的对象作为 bean 中的字段。这会创建一个 has-a 与您的 Objects
的 bean 的关系。
例如,假设我们有这个 Bean
:
public class YourBean implements java.io.Serializable {
private String s;
private ArrayList<String> list;
//Omitted rest of bean boilerplate
}
此示例将在其中包含两个不同的 Object
,String s
和名为 list
的 ArrayList<String>
。您可以根据需要向 bean 添加任意多的不同 Objects
和基元。
要使用无参数构造函数创建 bean,您将使用:
YourBean bean = new YourBean();
并且您可以设置和获取 Objects
封装在 with:
中的值
ArrayList<String> yourList = new ArrayList<>();
bean.setList(yourList);
System.out.println(bean.getList());
通过引用我命名为 bean
的 bean Object
,您将能够以这种方式引用 bean 中的所有 Objects
。
此外,您还可以创建多个相同类型的 bean
,因此每次创建 new YourBean()
时,您也可以使用所有 Objects
包含在.
此功能并非 Bean
所独有,您可以在任何 Class
中执行此操作,而 Bean
是一个术语,用于描述您编写某些 类。
我建议查看 Java 组合 以了解何时应该使用 has-a 关系,而不是 继承,这是一种是一种关系。
我们通常会谈论 Spring 豆子,但我认为你说的不是这个。在我看来,那些 JavaBean 只不过是 类 具有多个属性并且只有 getters/setters 但其构造函数具有零参数(因此它是可变的)。就如此容易。封装很多对象是因为它有多个属性。
但是,我从来没有将它们称为 JavaBeans,我认为我曾经使用过的最相似的概念是 POJO。我不确定是否有任何区别,但目的看起来是一样的。
如果你曾经在Java中谈论一个bean,我想任何人都会想到一个Spring bean。我建议你不要在其他情况下使用它。
这只是我的猜测。如果我说错了请告诉我。
JAVA豆子
JavaBeans 的概念最初是为 Swing 设计的,以促进独立 GUI 组件的开发,但该模式已被重新用于 Spring beans 和后端持久性领域休眠
另一方面,POJO 很简单 java 类.
另一种观点:
任何与第三方交互的 POJO 都会变成 JAVA BEAN :)
- Java 类 与任何 ORM(例如 Hibernate)交互
- Java 类 在 EJB 中用作会话对象
正如他们所说,"With Great Powers Comes Great Responsibilities" [摘自蜘蛛侠]
所以我们的普通 Pojos 变成了 JAVA BEANS :)
一篇值得一读的文章:https://mossgreen.github.io/Java-Bean-VS-Spring-Bean/
我刚刚开始阅读有关 Java Beans 的文章,我有一个问题与 Topic 的问题完全相同。所以我重复问题:
在定义中说“java bean将许多对象封装到一个对象(Bean)中。”
1.What does "many objects" here mean?
和
2.How they are encapsulated into one object by java beans?
编辑:
in computing based on the Java Platform, JavaBeans are classes that encapsulate many objects into a single object (the bean).
编辑 2: 所有 classes 都具有多个属性和字段的能力。 如果封装许多对象意味着具有多个属性和字段,我不明白为什么他们提到这种能力是 java bean class.
的优势首先要说清楚,Java中的每个Class
都扩展了类型Object
。 String
之类的东西也是 Object
.
"many objects" 是指我们如何使用不同的对象作为 bean 中的字段。这会创建一个 has-a 与您的 Objects
的 bean 的关系。
例如,假设我们有这个 Bean
:
public class YourBean implements java.io.Serializable {
private String s;
private ArrayList<String> list;
//Omitted rest of bean boilerplate
}
此示例将在其中包含两个不同的 Object
,String s
和名为 list
的 ArrayList<String>
。您可以根据需要向 bean 添加任意多的不同 Objects
和基元。
要使用无参数构造函数创建 bean,您将使用:
YourBean bean = new YourBean();
并且您可以设置和获取 Objects
封装在 with:
ArrayList<String> yourList = new ArrayList<>();
bean.setList(yourList);
System.out.println(bean.getList());
通过引用我命名为 bean
的 bean Object
,您将能够以这种方式引用 bean 中的所有 Objects
。
此外,您还可以创建多个相同类型的 bean
,因此每次创建 new YourBean()
时,您也可以使用所有 Objects
包含在.
此功能并非 Bean
所独有,您可以在任何 Class
中执行此操作,而 Bean
是一个术语,用于描述您编写某些 类。
我建议查看 Java 组合 以了解何时应该使用 has-a 关系,而不是 继承,这是一种是一种关系。
我们通常会谈论 Spring 豆子,但我认为你说的不是这个。在我看来,那些 JavaBean 只不过是 类 具有多个属性并且只有 getters/setters 但其构造函数具有零参数(因此它是可变的)。就如此容易。封装很多对象是因为它有多个属性。
但是,我从来没有将它们称为 JavaBeans,我认为我曾经使用过的最相似的概念是 POJO。我不确定是否有任何区别,但目的看起来是一样的。
如果你曾经在Java中谈论一个bean,我想任何人都会想到一个Spring bean。我建议你不要在其他情况下使用它。
这只是我的猜测。如果我说错了请告诉我。
JAVA豆子
JavaBeans 的概念最初是为 Swing 设计的,以促进独立 GUI 组件的开发,但该模式已被重新用于 Spring beans 和后端持久性领域休眠
另一方面,POJO 很简单 java 类.
另一种观点:
任何与第三方交互的 POJO 都会变成 JAVA BEAN :)
- Java 类 与任何 ORM(例如 Hibernate)交互
- Java 类 在 EJB 中用作会话对象
正如他们所说,"With Great Powers Comes Great Responsibilities" [摘自蜘蛛侠]
所以我们的普通 Pojos 变成了 JAVA BEANS :)
一篇值得一读的文章:https://mossgreen.github.io/Java-Bean-VS-Spring-Bean/