zoukankan      html  css  js  c++  java
  • c#中的强类型、弱类型和泛型

    强类型和弱类型的变量都有两个属性:类型和值。

    强类型的变量类型是不能改变的,弱类型的变量类型是随需改变的,这是强弱的真正含义。

    我们在编写c#代码时,变量类型是明确的,不可更改的,如string就是string,int就是int,这就是强类型,好处:

    1.能够享受代码提示功能

    2.能够获得重构工具的支持 

    3.能够在编译期发现更多错误 

    弱类型:Object,在C#中Object是所有类型的基类,任何对象都可以使用Object来引用。可是一旦转化成Object的变量之后,代码提示便消失了;即使我们“明确”对象的确切类型,也必须通过Cast才能使用——更何况它形成了一种被“滥用”或“误用”的机会。例如一段错误代码可能会传入一个不符合约定类型的对象,那么就会造成错误。更严重的是,这样的错误可能只要在 “运行时”才能被发现,编译器对此无能为力。

    [泛型的概念]
    (1)没有泛型的时候,所有的对象都是以object为基础,如果要使用时必须进行强制类型转换,如果对于值类型,则会导致不断拆箱装箱的过程,对系统消耗很大。
    (2)使用泛型时不需要通过object类进行装箱拆箱,使用的时候都会是确定的类型。
    (3)泛型的概念一开始是由集合引入,因为集合中的类型都是基于object类。可以在集合中使用泛型类。
    (4)泛型不仅仅用于集合,还可以用于委托、接口和方法。

    泛型的优点:高性能、类型安全、代码的重用与扩展

     

  • 相关阅读:
    JS站点
    1011 World Cup Betting (20分)
    1007 Maximum Subsequence Sum (25分)(动态规划DP)
    1006 Sign In and Sign Out (25分)
    1005 Spell It Right (20分)
    1004 Counting Leaves (30分)(DFS)
    1003 Emergency (25分)(Dijkstra算法)
    1002 A+B for Polynomials (25分)
    1001 A+B Format (20分)
    canvas
  • 原文地址:https://www.cnblogs.com/1016391912pm/p/11352900.html
Copyright © 2011-2022 走看看