JDK 8中几乎命名的方法参数
生活随笔
收集整理的這篇文章主要介紹了
JDK 8中几乎命名的方法参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
有時在Java中命名方法參數確實很不錯,這看起來可能不會出現很長時間了,但是始終還有其他一些解決方法,例如使用構建器模式來獲得類似的行為,這將為一點點。 在我看來,使用JDK 8中的Lambda支持可以使您獲得非常接近的效果,而無需其他一些方法所需要的模板。
因此,請考慮這個簡單的Facade類,該類提供了帶有可變參數列表的方法。 請注意,該方法帶有一個Consumer對象,這是我們稍后將要使用Lambda調用的方法。
因此,一旦有了適當的設置,就可以使用Lambda表示法調用您認為合適的參數數量的invoke方法:
... {public static void main(String[] args) {// Single parameter versionFacade.invoke(p -> p.value1="x" );// Multiple parameter versionFacade.invoke(p -> { p.value1="x"; p.value2="y";});} }當然,您的鷹眼將意識到,使用早期的JDK,相同的模式(當然要減去Consumer方法)。 考慮到那里有大量的Java開發人員,可能已經有人發明了這種模式。 但是你永遠不知道,如果不寫下來,那一切就不會發生。
... {public static void main(String[] args) {// Using an anonymous inner class pre JDK 8Facade.invoke(new Parameter() {{value1 = "x";value2 = "y";}});} } 參考: 在我們的JCG合作伙伴 Gerard Davison的博客博客中,JDK 8中幾乎命名的方法參數 。翻譯自: https://www.javacodegeeks.com/2013/08/almost-named-method-arguments-in-jdk-8.html
總結
以上是生活随笔為你收集整理的JDK 8中几乎命名的方法参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是增根 何谓增根
- 下一篇: 了解ElasticSearch分析器