簡體   English   中英

java 8方法參考與反思

[英]java 8 Method References and Reflection

因此,我正在嘗試即將面世的jdk8,並且在使用新的Method引用時遇到了一些奇怪之處。

有沒有一種方法可以對從方法引用創建的通用功能接口實例的參數進行類型檢查?

方法參考的getClass()返回的Class對象沒有方法,字段或有意義的超類或接口。 甚至類名也不包含任何有意義的信息。

您的問題不是很清楚。 我想按方法句柄是指方法參考。 在將方法引用分配給類型變量之前,它沒有類型。

說您有這種方法:

class A { public String m() { return ""; } }

然后A::m沒有類型:它的類型可以是任何具有String xxx();函數接口String xxx(); 方法。 例如,它可能是:

Supplier<String> s = A::m;

在這種情況下:

System.out.println(s.getClass().getDeclaredMethods()[0]);

打印:

public java.lang.Object mypackage.A$Lambda$1/1554547125.get()

匹配Supplier界面中方法的已刪除簽名。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM