Groovyでは、as
演算子またはasType
メソッドを使用して驚くべき型変換を実行できます。例としては、彼らが共通を共有んが何が、これらのタイプ間の関係「である」がないので、私は、私はショートにしてセットからリストへの整数から変換できることを驚いているGroovy型変換
Short s = new Integer(6) as Short
List collection = new HashSet().asType(List)
が含まれます祖先。
たとえば、次のコードでは、変換
class Parent {}
class Child1 extends Parent {}
class Child2 extends Parent {}
def c = new Child1() as Child2
に関与タイプ間 関係の面で整数/ショート例に相当する。しかし、もちろん、この例は失敗します。 as
演算子とasType
メソッドの後ろにある型変換規則は正確には何ですか?