ParameterizedType実装クラスのtoStringおかしくない?

staticネストクラスを含むParameterizedType(インターフェースなので実装があるはず)を取得すると、toString()がよくわからない文字列になる。
読み方がわかる方、教えてください。

package test;

import java.lang.reflect.ParameterizedType;

public class ParamTypeToStringTest {

    private static class C<T>{/**/}
    
    public static void main(final String[] args) {
        // Class
        System.out.println(C.class);
        // C<String>
        ParameterizedType t1 = (ParameterizedType) new C<String>() {/**/}
            .getClass().getGenericSuperclass();
        System.out.println(t1);
        // C<C<?>>
        ParameterizedType t2 = (ParameterizedType) new C<C<?>>(){/**/}
            .getClass().getGenericSuperclass();
        System.out.println(t2);
    }

}

実行結果

class test.ParamTypeToStringTest$C
test.ParamTypeToStringTest.test.ParamTypeToStringTest$C<java.lang.String>
test.ParamTypeToStringTest.test.ParamTypeToStringTest$C<test.ParamTypeToStringTest.test.ParamTypeToStringTest$C<?>>

test.ParamTypeToStringTest.test. って。