什么是类型安全?
它是什么意思以及为什么它很重要?
如果你问“类型安全”的概念是什么general意味着,它是代码的特征,允许开发人员确定某个值或对象将表现出某些属性(即属于某种类型),以便他/她可以以特定方式使用它,而不必担心意外或未定义的情况行为。
例如,在 C# 中,您可以说ArrayList
类是not类型安全,因为它可以存储任何物体,这意味着您可以执行如下操作:
var integers = new ArrayList();
integers.Add(1);
integers.Add(2);
integers.Add("3");
for (int i = 0; i < integers.Count; ++i) {
int integer = (int)integers[i];
// do something
}
上面的代码会编译,因为值“3”,即使它是一个字符串而不是一个整数,也可以合法地添加到一个ArrayList
since String
派生(如Int32
) from Object
。但是,它会抛出一个InvalidCastException
当你尝试设置时integer
to (int)integers[2]
因为一个String
不可能是cast to an Int32
.
另一方面,List<T>
class is类型安全的原因恰恰相反——即上面的代码将not编译如果integers
were a List<int>
。开发人员从类型安全中访问的任何值List<int>
你可以certain is an int
(或任何相应的T
适用于任何通用的List<T>
);因此,您可以确信您将能够执行诸如强制转换之类的操作int
(显然)或者说,long
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)