-4
我正在閱讀項目中的一些代碼片段,並且發現了一些帶有此簽名的函數。有人可以向我解釋什麼是返回類型代表的部分?這個語法指的是什麼?
private <T extends SessionRequest> void continueSession(T request, Action action)
我正在閱讀項目中的一些代碼片段,並且發現了一些帶有此簽名的函數。有人可以向我解釋什麼是返回類型代表的部分?這個語法指的是什麼?
private <T extends SessionRequest> void continueSession(T request, Action action)
即與約束的泛型方法.... 想象以下
private void continueSession(T request){}
那麼你的人可以這樣做:
continueSession("Hi");
或
continueSession(1000);
所以你需要能夠在編譯時間限制的是考慮作爲參數的方法....
現在,如果你做
private <T extends Number> void continueSession(T request){}
然後試圖調用
continueSession("Hi");
會因爲字符串不是子類Number
所以回答你的問題:
private <T extends SessionRequest> void continueSession(T request, Action action)
是僅允許是
是有約束的通用方法.... –
的T是通配符https://en.wikipedia.org/wiki/Wildcard_(Java) –
'T'必須是從'SessionRequest'擴展的類型才能被接受爲方法的參數。 – px06