たぷつきません

おなかがでてきた。もうたぷついてるやん。

もう一つお題

 これもワーニングにならないようにしたい。

    private <T> ComponentDefNodeModifier<T> getModifier(ComponentDefNode<T> node)
    {
        return node.getInterface(ComponentDefNodeModifier.class);
    }   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

…
public interface IQueryInterface<I> {
    
    <II extends I> boolean hasInterface(Class<I> interfaceClass);
    
    <II extends I> II getInterface(Class<I> interfaceClass);
…
public class ComponentDefNode<T> implements ComponentDef<T>, IQueryInterface<T> {
    public <TT extends T> TT getInterface(Class<TT> interfaceClass) {
        assertParameterIsInterface(interfaceClass);
        assertNotFound(interfaceClass);
        return registry.get(interfaceClass);
    }
…

 上記下線部で以下のワーニングが出る。

  • 型の安全性: 型 ComponentDefNodeModifier の式は、未検査の型変換を使用して ComponentDefNodeModifier に準拠する必要があります。

 ComponentDefNodeModifier<T>.class なんていう書き方ができれば良いんですけどねー。これの代替措置ってあるんだろうか。もちろん @SuppressWarnings("unchecked")なしで。

※追記 お題2がめちゃくちゃだったので書き直しました。お題1は解決済みです。