登山-C#-var关键字,dynamic关键字和类型强制转换之间的区别

时间:2020-11-27 17:00:25

var关键字与dynamic关键字定义的对象区别在于,dynamic的对象可以在运行期间改变其类型。在试用var关键字时,对象类型的确定会延迟,但是类型一旦确定,就不能改变。动态对象的类型是可以改变的,而且可以改变多次。

dynamic对象与强制类型转换之间的差异在于,强制转换对象的类型时,是用另一种兼容的类型创建一个新对象。不能将int类型强制转换为Person对象但是如果对象时动态对象,就可以把它从int编程Person类型

dynamic dyn;
dyn = 100;
dyn = "This is a string";
dyn = new Person(){FirstName="Bugs",LastName = "Bunny"};
dynamic类型就是这么潇洒。