Java:如何实现接口?

Java:如何实现接口?,java,monads,Java,Monads,M接口最简单可行的实现是什么。如何实现方法flatMap public interface M<T> { <U> M<U> flatMap(Function<T, M<U>> f); M<T> unit(T t); } flatMap打算做什么?M的规范是什么?这些方法应该做什么?通常此信息在接口的JavaDocs中。它应该将函数映射到M实例。@MickMnemonic any action acce

M
接口最简单可行的实现是什么。如何实现方法
flatMap

public interface M<T> {

    <U> M<U> flatMap(Function<T, M<U>> f);

    M<T> unit(T t);

}

flatMap打算做什么?M的规范是什么?这些方法应该做什么?通常此信息在
接口的JavaDocs中
。它应该将函数映射到
M
实例。@MickMnemonic any action accept
return null
。我不理解这个问题。方法
flatMap
unit
返回
M
。如果没有至少一个预先存在的
M
的具体实现,您就无法使用匿名类而不在某个时刻返回
null
M<String> m = new M<String>() {

    @Override
    public <U> M<U> flatMap(Function<String, M<U>> f) {
        return null; // ?
    }

    @Override
    public M<String> unit(String s) {
        return new M<String>() {
            @Override
            public <U> M<U> flatMap(Function<String, M<U>> f) {
                return null; // ?
            }

            @Override
            public M<String> unit(String s) {
                return null; // ?
            }
        };
    }
};