如何从非静态接口方法实现静态方法?

问题描述 投票:0回答:1

我有这样的界面:

public interface Byteable<T> {
    byte[] toBytes();
    T fromBytes(byte[] bytes);
}

顾名思义,它可以将对象转换为字节模式,并可以从给定的字节数组重新创建对象(如果没有,则抛出某种异常)。我喜欢toBytes()方法,它必须是非静态的,因为它只能应用于对象。但是如何创建一个静态方法,以便可以调用

ClassName.fromBytes(...);

如何确保每个实现该接口的类都具有这两个功能,或者如何创建使用非静态fromBytes(...)的静态方法?创建默认构造函数以及执行类似操作>]是一种好习惯吗?

new ClassName().fromBytes();

有没有好的做法?我猜抽象类也不是解决方案,因为它不能有静态方法,可以吗?

我有这样的接口:public interface Byteable {{[byte [] toBytes(); T fromBytes(byte []个字节); }顾名思义,它将对象转换为字节模式,然后...

java interface abstract-class static-methods
1个回答
0
投票

您可以创建一个将两个方法都包含为抽象的抽象类,并在所需的类中扩展该抽象类。

© www.soinside.com 2019 - 2024. All rights reserved.