强类型,弱类型和推断类型

一、强类型

在编译时就知道的类型。如:

int i=1;

能点出来的也是强类型。

二、弱类型

在运行时才知道的类型。

dynamic dynamic= new ExpandoObject();
            dynamic.Name = "张三";

通过索引器读出来的是弱类型。如:dr["id"];

三、推断类型

var s="ss";

反编译后发现s是string类型的。说明,在编译期间已经知道了类型。所以,var类型是强类型。

var 只能方法内部的变量,不能用于方法参数的类型(没有赋值,不知道是什么类型),不能用于类成员变量的类型(成员变量会有默认值,不知道类型无法给默认值)

原文地址:https://www.cnblogs.com/wesley168/p/6627977.html