老师似乎是第二次提到JavaBean了。

老师似乎是第二次提到JavaBean了。

啥是JavaBean啊,前面Java基础有讲过吗

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,1. 序列化和JSON区别:

  • JSON序列化是把对象包装成JSON字符串传输。Json的优点:明文结构一目了然,可以跨语言,属性的增加减少对解析端影响较小。缺点:字节数过多,依赖于不同的第三方类库。

  • 序列化(Serializable)是将对象状态转换为可保持或可传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。将对象的状态信息转换为可以存储或传输的窗体的过程。 在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

  • serialize在编码后大概是json的两倍。不过json无法处理对象方法等数据。但序列化使用serialize,是可以处理对象的。

2. JavaBean的约定是这个类可进行序列化,也就说可以不进行序列化。不进行序列化满足前三条的约定也是JavaBean

3. 实现Serializable 接口的类都是可序列化的,当未实现,则是不可以进行序列化的。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

好帮手慕小尤 2020-09-09 17:09:49

同学你好,JavaBean同学可以理解为之前课程中提到过的实体类。

    简单笼统的说JavaBean是一种符合一定规范编写的Java类,不是一种技术,而是一种规范 , 表达实体和信息的规范。大家针对这种规范,总结了很多开发技巧、工具函数。符合这种规范的类,可以被其它的程序员或者框架使用。
它的方法命名,构造及行为必须符合特定的约定:
    1、这个类必须具有一个公共的(public)无参构造函数;
    2、所有属性私有化(private);
    3、私有化的属性必须通过public类型的方法(getter和setter)暴露给其他程序,并且方法的命名也必须遵循一定的命名规范。
    4、这个类应是可序列化的。(比如可以实现Serializable 接口)

祝学习愉快!

  • 提问者 易萧 #1
    关于这个序列化我也有点混淆。 因为前面介绍ObjectOutputStream需要实现Serializable接口提到的就是序列化和反序列化,但现在对于一个Object到JSON字符串的转换或者加载也称为序列化和反序列化。 1、Java中的序列化,和JSON,有什么异同呢。 2、如果是实现Serializable接口变成可序列化的,那视频中,老师没有实现Serializable接口,怎么能称为JavaBean呢。 3、如果并非是实现Serializable接口才能称为可序列化的类,那么什么类才是不可序列化的?是没有getter和setter或者不可以被外界实例化的吗?是不是满足了前三点,第四点就已经满足了。
    2020-09-09 17:40:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师