Ios 在泛型类中具有与非泛型超类同名的类方法时出错

Ios 在泛型类中具有与非泛型超类同名的类方法时出错,ios,generics,swift,Ios,Generics,Swift,以下代码导致错误不明确地使用“B”: public class A { public class func B<T>(t: T) -> T { return t } } public class AT<T> : A { public class func B<T1>(t: T1) -> T1 { return t } } println(AT<Int>.B("a"))

以下代码导致错误
不明确地使用“B”

public class A {
    public class func B<T>(t: T) -> T {
        return t
    }

}
public class AT<T> : A {
    public class func B<T1>(t: T1) -> T1 {
        return t
    }
}
println(AT<Int>.B("a"))
公共A类{
公共类函数B(t:t)->t{
返回t
}
}
公共课:A{
公共类函数B(t:T1)->T1{
返回t
}
}
println(AT.B(“a”))

但是当尝试将
覆盖
添加到
AT
中的
方法
B
时,出现错误
方法不会覆盖其超类中的任何方法
由于参数类型不同,因此无法覆盖该函数,因此,一个函数不能充当另一个函数。此外,如果同一方法签名已经存在,则不能使用该方法签名。唯一的解决方案是更改名称,或者对参数使用与超类相同的类型。此外,不能在超类中隐藏方法,但如果通过重写异常来使用异常,则可以引发异常