美文网首页
swift 关联类型

swift 关联类型

作者: leafu | 来源:发表于2021-04-13 11:54 被阅读0次

关联类型

定义一个协议时,声明一个或多个关联类型作为协议定义的一部分将会非常有用。关联类型为协议中的某个类型提供了一个占位符名称,其代表的实际类型在协议被遵循时才会被指定。关联类型通过 associatedtype 关键字来指定。关联类型只能在协议中定义。

关联类型实践

在协议中使用associatedtype来定义一个关联类型,在遵守协议的类中使用typealias指定关联类型,如下图:

import UIKit
protocol HelloProtocol {
/****
定义一个关联类型
/
associatedtype value
/****
定义一个使用方法
/
mutating func logValue(v: value)
}
class HelloClass: HelloProtocol {
/

指定关联类型是哪种类型,这里指定的是Int
/
typealias value = Int
/

实现协议中的方法
/
func logValue(v: Int) {
/

这里打印的类型是Int类型2
/
print(v)
}
}
let hC = HelloClass()
hC.logValue(v: 2)
class NextClass: HelloProtocol {
/
*
指定关联类型是哪种类型,这里指定的是Int
/
typealias value = String
/
*
实现协议中的方法
/
func logValue(v: String) {
/
*
这里打印的类型是String类型NextClass
*/
print(v)
}
}
let hN = NextClass()
hN.logValue(v: "NextClass")

相关文章

  • swift 关联类型

    关联类型 定义一个协议时,声明一个或多个关联类型作为协议定义的一部分将会非常有用。关联类型为协议中的某个类型提供了...

  • Swift 5.x enum关联值

    可以定义Swift枚举来存储任意给定类型的关联值, 如果需要的话不同枚举成员关联值的类型可以不同 e.g. 输出结...

  • iOS中Swift从开始入门到最后的放弃(十),

    # Swift方法 在 Swift 中特定类型的相关联功能被称为方法。在 Objective C 中类是用来定义方...

  • Swift 协议关联类型和约束的理解

    协议 (Protocol) 是 Swift 语言中非常强大而灵活的一个特性。而其中的关联类型就是 Swift 协议...

  • 2018-03-08

    Swift关键字 associatedtype: 协议-关联类型, 作用:为协议中的某个类型提供了一个占位名(或者...

  • swift

    你可以定义swift枚举来存储任意类型的关联值,如果需要的话,每个枚举成员的关联值类型可以各不相同。枚举的这种特性...

  • Swift:基础(二十一)方法

    Swift 方法 Swift 方法是与某些特定类型相关联的函数 在 Objective-C 中,类是唯一能定义方法...

  • Swift基础--方法

    Swift基础--方法 swift中方法分为实例方法和静态方法,方法时于默写特定类型相关联的函数.类,结构体,枚举...

  • Swift 为分类增加属性objc_getAssociated

    OC 获取关联对象 Swift 获取关联对象——错误的写法 Swift 获取关联对象——正确的写法 设置关联对象 ...

  • Swift 学习笔记(三)

    Swift属性 Swift属性将值跟特定的类,结构体,枚举关联。分为存储属性和计算属性,通常用于特定类型的实例。属...

网友评论

      本文标题:swift 关联类型

      本文链接:https://www.haomeiwen.com/subject/bfyqlltx.html