[英]Scala/Java syntax, return interface implementation
此代碼行在底部的代碼中意味着什么?
return Promise.<SimpleResult>pure //why is the dot
我是Scala和Java 6的新手,相關的主題/術語是什么?
如果框架找不到請求的操作方法,則將調用onHandlerNotFound操作:
import play.*;
import play.mvc.*;
import play.mvc.Http.*;
import play.libs.F.*;
import static play.mvc.Results.*;
public class Global extends GlobalSettings {
public Promise<SimpleResult> onHandlerNotFound(RequestHeader request) {
return Promise.<SimpleResult>pure(notFound(
views.html.notFoundPage.render(request.uri())
));
}
}
更新 :
play.libs.F.Java
文件
public static class Promise<A> {
public static <A> Promise<A> pure(final A a) {
return FPromiseHelper.pure(a);
}
}
什么是<A>
和Promise<A>
?
Promise.pure()
是通用方法,使用某些T類型進行參數化。
Promise.<SimpleResult>pure()
以SimpleResult作為通用類型調用此方法。 大多數情況下,這樣做是可選的,因為編譯器會根據方法的參數或結果分配給變量的類型來推斷泛型,例如
List<String> s = Collections.emptyList();
這是
List<String> s = Collections.<String>emptyList();
要么
Set<String> Collections.singleton("hello");
這是
Set<String> Collections.<String>singleton("hello");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.