类型系统:类型检查、类型转换、任意类型-强类型、类型转换

1、编译器只对确定类型进行检查;

2、类型转换是否能够成功有没有明确的判断;编译时or运行时;

3、任意类型不参与编译时类型检查;

  任意类型不能直接参与运算,必须转化为确定的类型;

  任意类型转化为确定类型是否需要显式转化。

强类型:类型检查(编译时)和转化(运行时)都有明确的状态信息;

中类型:类型检查(编译时)强制,转换无明确状态信息;

弱类型:全部无;

动态类型:

任意类型变量中包含类型信息,可以在运行时获取;

继承类型(动态):变量中包含类型信息;

    id x = self;

    UIView *res = x;

    [res addSubview:[UIView new]];

原文地址:https://www.cnblogs.com/feng9exe/p/9686233.html