從前面的總結中我們知道Lambda的使用場景是實現(xiàn)一個函數(shù)式接口,那么本篇就將闡述一下何為函數(shù)式接口以及Java的function
包中提供的幾種函數(shù)原型。
函數(shù)式接口
早期也叫作SAM(Single Abstract Interface),從全稱能夠看出是一種只定義了單個抽象方法的接口。
在這里,由于需要引入新的概念,故先來學習何為默認方法,再順便提一下接口中的靜態(tài)方法。
默認方法(Virtual Extension Methods)
也稱為虛擬擴展方法、防護方法,由Java8引入,意味著現(xiàn)在接口能夠?qū)崿F(xiàn)自身所聲明的方法。
看一個示例:
public interface ExInterface { default void doSomething() { System.out.println("I did something :)"); } }
如此我們就成功地給doSomething()
方法賦予了默認操作,注意方法聲明前的default
關鍵字,表明這個方法擁有默認操作,如果不添加
延伸閱讀
學習是年輕人改變自己的最好方式