(原)
这个接口很简单,里面只有一个抽象方法,没有default和静态方法。
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package java.util.function;
/**
* Represents a supplier of results.
*代表了一个供应的结果
*
There is no requirement that a new or distinct result be returned each
* time the supplier is invoked.
* 没有要求supplier 被调用以后都需要返回一个新的或者不同的结果
*
This is a functional interface
* whose functional method is {@link #get()}.
*这是一个方法为get的函数式接口
* @param the type of results supplied by this supplier
*
* @since 1.8
*/
@FunctionalInterface
public interface Supplier {
/**
* Gets a result.
*
* @return a result
*/
T get();
}
如果前面几篇看过了,那么这个会很简单。不接收参数,返回的类型随调用者控制,这个有点类似于不接收参数的工厂模式。
然后有一个与之相关的,返回int类型的函数式接口,叫IntSupplier,
它里面的方法是这样的。
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.