Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么是JavaPOJO类,JavaBean,普通类?_Java_Class_Javabeans_Pojo - Fatal编程技术网

什么是JavaPOJO类,JavaBean,普通类?

什么是JavaPOJO类,JavaBean,普通类?,java,class,javabeans,pojo,Java,Class,Javabeans,Pojo,可能重复: 嗨,请不要说我的问题重复:-)我看到了所有的问题,但不明白确切的区别 谁能用简单的语言解释一下什么是POJO,Bean,Normal Class。它具有相应属性的属性、getter和setter。它还可以重写Object.toString()和Object.equals() JavaBeans:请参阅 普通类:任何java类。POJO代表普通的旧java对象,用于描述与“普通类”相同的事物,而JavaBean遵循一组规则。最常见的bean使用getter和setter来保护其成员变

可能重复:

嗨,请不要说我的问题重复:-)我看到了所有的问题,但不明白确切的区别


谁能用简单的语言解释一下什么是
POJO
Bean
Normal Class
。它具有相应属性的属性、getter和setter。它还可以重写
Object.toString()
Object.equals()

JavaBeans:请参阅


普通类:任何java类。

POJO代表普通的旧java对象,用于描述与“普通类”相同的事物,而JavaBean遵循一组规则。最常见的bean使用getter和setter来保护其成员变量,这些变量通常设置为private,并且没有参数公共构造函数。维基百科对JavaBeans有一个很好的概述:

POJO通常用来描述一个类,它不需要是任何东西的子类,或者实现特定的接口,或者遵循特定的模式

  • 普通类
    :Java类

  • javabean

    • 所有私有属性(使用getter/setter)

    • 公共无参数构造函数
    • 实现可序列化
  • Pojo
    : 普通旧Java对象是一个不受任何限制约束的Java对象,除了Java语言规范强制的限制。也就是说,POJO不应该

    • 扩展预先指定的类
    • 实现预先指定的接口
    • 包含预先指定的注释

  • 另外,JavaBeans应该实现Serializable接口。我在spring中创建bean时没有这样做。我听说除了没有参数构造函数之外,pojo和bean都是相同的,对吗?JavaBean,ImplementSerializable意味着每次我们都必须手动实现Serializable?一个公共无参数构造函数:我认为每个类都有自己的无参数构造函数如果我是正确的,为什么只为bean指定?如果我错了,我很抱歉。如果您没有为类指定任何构造函数,则只有java会隐式创建无参数构造函数。@firstpostcommenter从中获取POJO的描述可能会很有用。(“将业务逻辑编码到常规java对象中,而不是使用实体bean”)。换句话说,POJO是一个用来描述“普通的旧java对象”的名称,以对比java bean。POJO是特定于域/业务对象的,所以不一定所有Java类都是POJO。POJO和bean之间的唯一区别在于bean应该实现可序列化的接口?