小编Joh*_*iba的帖子

匿名类的Java"方法序列化"

假设我正在创建一个库,该库提供优先级队列类.用户实例化一个并实现Comparator接口,然后轻轻地将其传递给优先级队列.我想要:

1. 授予用户轻松定义Comparator类的可能性 - 通过将其实现为匿名类,就像这个示例所示:

    PriorityQueue<int> pq = new PriorityQueue<int>();
    pq.setComparator(new Comparator<int>() {
                @Override
                public int compare(int i1, int i2){
                     if(i1 < i2) return -1;
                     else if(i1 > i2) return 1;
                     else return 0;
                }
             };);
Run Code Online (Sandbox Code Playgroud)

2. 授予用户使用其附加比较器序列化和反序列化优先级队列ALONG的可能性.

3. 仅使用JDK实现此目的,没有其他外部库

最好的方法是什么?

目前我在反序列化Comparator类时遇到问题,更具体地说是创建它的实例,因为它在创建它的类中是私有的("拥有"它)并且它也没有null构造函数(这不是真正的因为我可以使用它公开的可用构造函数,所以这是个大问题.

感谢您提前提出的任何建议.

java methods serialization

6
推荐指数
1
解决办法
689
查看次数

标签 统计

java ×1

methods ×1

serialization ×1