类型别名
Any
AnyClass
所有类类型隐式遵循的协议。
声明
typealias AnyClass = AnyObject.Type
详述
您可以使用AnyClass
协议作为任何类实例的具体类型。当您这样做时,所有已知的@objc
类方法和属性都可以分别作为隐式展开的可选方法和属性使用。例如:
class IntegerRef {
@objc class func getDefaultValue() -> Int {
return 42
}
}
func getDefaultValue(_ c: AnyClass) -> Int? {
return c.getDefaultValue?()
}
getDefaultValue(_:)
函数使用可选链接来安全地调用 c
上的隐式解包类方法。调用具有不同类类型的函数显示了getDefaultValue()
类方法如何仅在条件下可用。
print(getDefaultValue(IntegerRef.self))
// Prints "Optional(42)"
print(getDefaultValue(NSString.self))
// Prints "nil"
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相关用法
- Swift AnyCollection min()用法及代码示例
- Swift AnyCollection allSatisfy(_:)用法及代码示例
- Swift AnyCollection compactMap(_:)用法及代码示例
- Swift AnyCollection isEmpty用法及代码示例
- Swift AnyCollection index(_:offsetBy:)用法及代码示例
- Swift AnyCollection split(separator:maxSplits:omittingEmptySubsequences:)用法及代码示例
- Swift AnyCollection suffix(from:)用法及代码示例
- Swift AnyCollection contains(where:)用法及代码示例
- Swift AnyCollection flatMap(_:)用法及代码示例
- Swift AnyCollection sorted()用法及代码示例
- Swift AnyCollection max()用法及代码示例
- Swift AnyCollection reduce(into:_:)用法及代码示例
- Swift AnyCollection index(_:offsetBy:limitedBy:)用法及代码示例
- Swift AnyCollection subscript(_:)用法及代码示例
- Swift AnyCollection shuffled(using:)用法及代码示例
- Swift AnyCollection first用法及代码示例
- Swift AnyCollection prefix(upTo:)用法及代码示例
- Swift AnyCollection joined()用法及代码示例
- Swift AnyCollection randomElement()用法及代码示例
- Swift AnyCollection sorted(by:)用法及代码示例
- Swift AnyCollection enumerated()用法及代码示例
- Swift AnyCollection lexicographicallyPrecedes(_:)用法及代码示例
- Swift AnyCollection min(by:)用法及代码示例
- Swift AnyCollection shuffled()用法及代码示例
- Swift AnyCollection joined(separator:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 AnyClass。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。