私は以下のインターフェースを持っています
interface applyBuisnessRule<T> {
public T execute(String jobCode) throws Exception;
}
クラスの下にはその実装があります
class CardvaletImpl<T> implements applyBuisnessRule<T> {
private static final String Success = null;
public T execute(String jobCode) throws Exception {
T result = null;
// put your logic
return result;
}
}
そして、それはコードが呼び出し元クラスから実行する方法です
CardvaletImpl<String> cardvaletImpl = new CardvaletImpl<>();
String result = cardvaletImpl.execute("JOBCODE");
上記のクラスが下のシナリオに示されているようにマップを返す必要がある場合は、マップを結果タイプに入れる方法を教えてください ジェネリック型であり、呼び出し側と、インターフェイスがジェネリック型であり、インターフェイスのメソッドもジェネリック型であるオブジェクトを返すため、呼び出し側がマップが結果オブジェクトに入ることを知る方法を返します
class CardvaletImpl<T> implements applyBuisnessRule<T> {
private static final String Success = null;
Map<String, Integer> myMap = new HashMap<String, Integer>(); // ****Map that i want to return from this class to caller class ***
myMap.put("A",23);
myMap.put("A",45);
public T execute(String jobCode) throws Exception {
T result = null;
// ** advise how i will put the map into object that is into result and return to the caller
}
}
回答 1 件
関連記事
- オブジェクトoがnullの場合、equals()メソッドでfalseを返すことはできません。 equals()の実装とテストケースを追加しました
- getメソッドがreqwestでResponseオブジェクトを返さないのはなぜですか?
- [return:MaybeNull]でマークされたジェネリックから `null`を適切に返すにはどうすればよいですか?
- ジェネリックメソッドで `Enum`値を` int`にキャストできません
- DRFジェネリックビューでアクション(HTTPメソッド)タイプを知る方法は?
- メソッド呼び出しでオブジェクトを明示的に参照する方法は?
- カスタムコントローラーのrender()メソッドのgetTitle()メソッドの後にエンティティオブジェクトを保持する
- ボイドまたは戻り値の型のアプローチを使用してオブジェクトに値を設定する
- typescriptでジェネリック型を使用して、正しい型のオブジェクトからプロパティを返します
- findメソッドでネストされたオブジェクトを参照するにはどうすればよいですか?
ここでOracleのJavaチュートリアルで述べたように:
そのため、オーバーライドするメソッドは戻り型のスーパークラスを返すことはできず、子クラスのみを返すことができます。