java类实现序列化的方法

Java中实现序列化的两种方式 Serializable 接口和 Externalizable接口

对象的序列化就是将对象写入输出流中。

反序列化就是从输入流中将对象读取出来。

用来实现序列化的类都在java.io包中,我们常用的类或接口有:

ObjectOutputStream:提供序列化对象并把其写入流的方法

ObjectInputStream:读取流并反序列化对象

Serializable:一个对象想要被序列化,那么它的类就要实现 此接口,这个对象的所有属性(包括private属性、包括其引用的对象)都可以被序列化和反序列化来保存、传递。

Externalizable:他是Serializable接口的子类,有时我们不希望序列化那么多,可以使用这个接口,这个接口的writeExternal()和readExternal()方法可以指定序列化哪些属性;

但是如果你只想隐藏一个属性,比如用户对象user的密码pwd,如果使用Externalizable,并除了pwd之外的每个属性都写在writeExternal()方法里,这样显得麻烦,可以使用Serializable接口,并在要隐藏的属性pwd前面加上transient就可以实现了。

原文地址:https://www.cnblogs.com/arvins/p/8504476.html

时间: 2024-10-16 21:49:14

java类实现序列化的方法的相关文章

Java 类实现序列化的方法(二种)?

java.io.Serializable 接口或实现 Externalizable 接口. Collection 框架中实现比较要实现 Comparable 接口或 Comparator 接口,并实现比较方 法 原文地址:https://www.cnblogs.com/dingyi-boss/p/11434322.html

java类,对象,方法

1,类和对象   在面向对象的概念当中,类(class)是既包括数据又包括作用于数据的一组操作的封装体.类的数据称为成员变量,类对数据的操作称为成员方法.成员变量反映类的状态和特征,成员方法反映类的行为和能力.类的成员变量和方法统称为类的成员.   对象(Object)是类的实例(instance).对象是动态的,拥有生命周期,都会经历一个从创建.运行到消亡的过程.对象与类的关系就像变量与数据类型一样.   类声明 { 修饰符 } class <Classname> { extends <

C#调用java类、jar包方法

一.将已经编译后的java中Class文件进行打包:打包命令JAR(或者直接使用eclipse打包比较方便) 如:将某目录下的所有class文件夹全部进行打包处理: 使用的命令:jar cvf test.jar -C com/ . 其中test.jar为要生成的jar包:com/ . 为指定的当前目录下的文件夹,该文件夹包括子文件夹及class文件: 二.到IKVM官方网站下载IKVM需要的组件  http://www.ikvm.net/ ikvm-0.42.0.3.zip ikvmbin-0.

JAVA类的无参方法

Java注释:                //:单行注释                /**/:多行注释                /**    */:JavaDoc注释    方法:            语法: 访问修饰符    返回值类型    方法名(){                            方法体                        } 举例:                                public void run(){  

增强一个Java类中的某个方法的几种方式

      * 一种方式:继承的方式.  * 能够控制这个类的构造的时候,才可以使用继承. Connection是一个接口,实现类不确定(由各厂商提供),无法使用此方法     * 二种方式:装饰者模式方式.         * 包装对象和被包装的对象都要实现相同的接口.         * 包装的对象中需要获得到被包装对象的引用.         ***** 缺点:如果接口的方法比较多,增强其中的某个方法.其他的功能的方法需要原有调用.     * 三种方式:动态代理的方式.         

lombok注解为java类生成Getter/Setter方法

1. 先到lombok官网下载lombok.jar包 : http://projectlombok.org/ 2. 下载了之后的两种安装方法: 1. 双击下载下来的 JAR 包安装 lombok 我选择这种方式安装的时候提示没有发现任何 IDE,所以我没安装成功,我是手动安装的.如果你想以这种方式安装,请参考官网的视频. 2.eclipse / myeclipse 手动安装 lombok 1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini 所在的文件夹

Java类的继承与方法调用的一个小问题

1 public class Father { 2 3 protected void server(int i){ 4 switch (i){ 5 case 1: 6 methodone(); 7 break; 8 case 2: 9 methodtwo(); 10 break; 11 case 3: 12 methodthree(); 13 break; 14 default: 15 System.out.println("error"); 16 } 17 18 19 20 } 21

JAVA类的序列化

作用:用于对象的持久化,将对象写到硬盘中,需要用的时候再反序列化取出来. 所谓序列化其实就是将程序中的数据(对象)通过某种方式,保存到本地中. 然后可以在程序关闭之后还保存程序的某个执行状态,方便在程序下次 执行的时候通过"反序列化"读取出来,并且能够还原数据的类型,从而延续程序退出时的状态. 一般来说,我们会使用序列化保存一些需要持久化的数据,当然如果这个数据会比较庞大的话, 我们就直接使用数据库了!所以,序列化实际上目前很多领域用的已经不多了,大部分使用 都已被数据库替代了! 如何

Java学习(八):Java修饰符(类、变量、方法)

java中的修饰符分为类修饰符,变量修饰符,方法修饰符. 类修饰符: 1.public : public 即公共类. 2.package : 默认缺省为包修饰符,本包可见. 3.abstract :凡是用 abstract 修饰符修饰的类,被称为抽象类.含有一个或者多个抽象方法的类必须声明为抽象类,抽象类无法实例化. 4.final :当一个类不可能有子类时可用修饰符 final 把它说明为最终类. 变量修饰符: 1.public :用 public 修饰的变量可以被所有其它类所引用. 2.pr