-
AnyObjetc
: 代表任意类的instance
、类的类型、仅类遵守的协议。(struct不行) -
Any
: 代表任意类型,包括function
类型或Optional
类型 -
T.Type
: 一种类型,T.self
是T.Type
类型 -
T.self
: 如果 T是实例对象,就返回的就是它本身。如果 T是类,就返回metadata
-
AnyClass
: 代表任意实例类型:AnyObject.Type
-
type(of:)
:用于获取一个值的动态类型
var t = Teacher()
var t1 = t.self
var t2 = Teacher.self
print("实例对象.self \(type(of: t1))")
print("类.self \(type(of: t2))")
//定义一个变量 接收 Teacher.self, Teacher.Type 就是 Teacher.self的类型
var tClass:Teacher.Type = Teacher.self
var anyClass:AnyClass = Teacher.self
实例对象.self Teacher
类.self Teacher.Type
Program ended with exit code: 0
is , as , as? , as!
is: 判断是否为某种类型
as: 用来做强制转换
网友评论