Avatar
public protocol Po { func doHoge() } extension Po { public static func getDefaultInstance() -> Po { return DefaultPo() } } internal class DefaultPo: Po { func doHoge() {} } // let po = Po.getDefaultInstance() <- Compile error let po = DefaultPo.getDefaultInstance() なのに今さら気づいた… Protocol は適合する対象であって型としては存在はしないんだなぁというのを実感した