问题描述
我刚开始阅读有关Java Bean的文章,我有一个与这个的问题.所以我重复这个问题:
I'm newly started reading about Java Beans and I had a question which was exactly same as this Topic's question. So I repeat The question:
在定义上说" java bean将许多对象封装到一个对象(bean)中."
和
来自 Java Beans Wikipedia :
Edit2:所有类都具有具有多个属性和字段的能力.如果封装许多对象意味着具有多个属性和字段,我不明白为什么它们提到此功能是Java bean类的优势.
all of classes have ability of having multiple attributes and fields.If encapsulating of many objects means having multiple attributes and fields, I don't understand why they mentioned to this ability as a advantage of java bean class.
推荐答案
首先要弄清楚,Java中的每个Class
都扩展了Object
类型. String
之类的东西也是Object
.
First to make it clear, every Class
in Java extends the type Object
. Something like String
is also an Object
.
许多对象"是指我们如何将不同的对象用作Bean中的字段.这将与Bean和Objects
建立有关系.
The "many objects" is referring to how we can use different objects as fields within the bean. This creates a has-a relationship with the bean to your Objects
.
例如,说我们有这个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
和基元.
This example will contain two different Object
s inside of it, the String s
and the ArrayList<String>
named list
. You can add as many different Objects
and primitives to your bean as you want.
要使用no-args构造函数创建bean,则应使用:
To create the bean with a no-args constructor, you would then use:
YourBean bean = new YourBean();
您可以设置并获取封装在其中的Objects
的值:
And you can set and get the values of the Objects
encapsulated within with:
ArrayList<String> yourList = new ArrayList<>();
bean.setList(yourList);
System.out.println(bean.getList());
通过引用我命名为bean
的bean Object
,您将能够以此方式引用bean中的所有Objects
.
You will be able to refer to all the Objects
inside the bean this way by referencing the bean Object
I named bean
.
此外,您还可以创建多个相同类型的bean
,因此每次创建new YourBean()
时,您也将能够使用其中包含的所有Objects
.
Additionally, you can create multiple of the same type of bean
as well, so every time you make a new YourBean()
, you will also be able to use all the Objects
contained within.
此功能不是Bean
所独有的,您可以在任何Class
中进行此操作,而Bean
是一个术语,用于描述编写某些类的特定方式.
This functionality is not unique to a Bean
, you can do this in any Class
, rather a Bean
is a term used to describe a specific way you write some classes.
我建议研究 Java组合,以了解何时应使用具有关系,而不是使用继承( >是关系.
I recommend looking into Java Composition to learn when you should use a has-a relationship, rather than inheritance which is an is-a relationship.
这篇关于Java Bean将许多对象封装为一个,如何?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!