C#中Type作为抽象类为何能创建实例指向并描述不同类型?

例如:

int tmp = 7;
Type type = tmp.GetType();

来自 Object 中的成员方法 GetType 是如何做到返回一个指向本变量类型的 Type 实例的?

定义了数据类型tmp,内部会有数据类型标识及长度,GetType方法会去判断。