当前位置: 首页 > 知识库问答 >
问题:

在Java 8中序列化Java函数[重复]

李嘉胜
2023-03-14

我试图创建一个类来模拟程序堆栈。是否有可能使这个类可序列化?我希望能够使用这个作为Akka消息。谢谢!

public class ProgramStack<T>{

    public final Queue<UnaryOperator<T>> programStack;
    private T context;

    ProgramStack(Queue<UnaryOperator<T>> programStack, T context) {
        this.programStack = programStack;
        this.context = context;
    }

    public void next() {
        UnaryOperator function = programStack.poll();
        function.apply(context);
    }

    public boolean hasNext() {
        return !programStack.isEmpty();
    }

}

共有2个答案

丁子石
2023-03-14
import java.io.Serializable;

public class ProgramStack<T> implements Serializable {

// etc etc

}
甘明朗
2023-03-14

首先,不序列化方法,而是序列化具有行为的对象。无论如何,为了能够序列化它,您必须实现Serializable。所有会员都必须这样做。如果你看医生https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html队列未实现可序列化,因此请确保任何对象实现的队列都是可序列化的。我不知道t必须是什么,但它也必须实现Serializable,以便序列化ProgramStack类型的对象。

 类似资料:
  • Serialize 函数 func Serialize(v interface{}, simple bool) []byte 将 v 序列化为字节切片。simple 参数的含义与 Writer 结构体的序列化的 simple 参数相同。 Unserialize 函数 func Unserialize(b []byte, p interface{}, simple bool) 将字节切片数据 b 反

  • 问题内容: 我已经开始在我的第一个android应用程序上进行工作,并且具有处理多层图像的应用程序。我能够将项目文件的平面版本导出为PNG,但我希望能够保存分层图像以供以后编辑(包括应用于某些层的任何选项,例如基于文本的层)。 无论如何,我已经确保需要写入文件的类是“可序列化的”,但是由于android.graphics.Bitmap不可序列化这一事实而遇到了一些障碍。以下代码实质上将位图作为PN

  • 问题内容: 如何序列化未实现Serializable的对象?我不能将其标记为Serializable,因为该类来自第3方库。 问题答案: 您不能序列化未实现的类,但可以将其包装在可以实现的类中。为此,您应该在包装器类上实现和,以便可以以自定义方式序列化其对象。 首先,使您的非序列化字段。 在中,首先调用流以存储所有非瞬态字段,然后调用其他方法来序列化不可序列化对象的各个属性。 在中,首先调用流以读

  • 我有两个Java应用程序-和。需要通过套接字发送到类的Slave实例。 Master创建这个类的实例,序列化它并通过套接字发送到Slave。 在上,一切正常。没有异常。接收数据并尝试对其进行反序列化。引发以下异常 JAVAlang.ClassNotFoundException 在类中没有错误,因为如果我用优化函数=null创建它,那么就会毫无问题地反序列化它。我试图将实例序列化到中的文件中,然后也

  • 问题内容: 这个问题已经在这里有了答案 : 将对象序列化为JSON (3个答案) 3年前关闭。 我需要将一个对象序列化为JSON。我正在使用jQuery。有没有“标准”的方式来做到这一点? 我的具体情况:我有一个定义如下的数组: 我需要将其转换为字符串以像这样传递: 问题答案: JSON-js -JavaScript中的JSON。 要将对象转换为字符串,请使用: 要将JSON字符串转换为对象,请使

  • 我有一个kdtree,其节点由以下字段组成:公共静态类节点实现可序列化{ 其中DataPoint定义: 公共静态类DataPoint实现可序列化{公共可比X;公共可比Y;公共可比Z; 我想序列化树,存储在文件中并在回答范围查询时反序列化。我对这个概念od序列化的理解并不好。从我收集的任何内容中,我编写了以下函数,但不起作用。有人能帮忙吗?