zoukankan      html  css  js  c++  java
  • C#面向对象(类库、委托、is as运算符)

    1、类库(Class Library)

    .dll 文件

      类库字面意思就是类的集合,里面有很多被编译后的C#代码,不可阅读,不可修改,只能调用

      类库是一个综合性的面向对象的可重用类型集合,这些类型包括:接口、抽象类和具体类。

      类库可以解决一系列常见编程任务(包括诸如字符串管理、数据收集、数据库连接以及文件访问等任务)

      还可以解决多种专用开发任务(控制台应用程序、桌面应用程序、WEB应用程序等)。

    写类库

            新建项目——类库——用C#编写代码(类一定是 public )——生产,生产解决方案——classlibrary/bin/Debug——.dll文件

    引用

          解决方案管理器——添加——浏览——找到类库文件——添加——属性,复制本地:true —— 在命名空间引用。

    2、is 和 as 运算符

     (1)is  是判断某个对象是否是某种类型,返回bool值

         某对象  is  某类型         如果匹配上    返回true,否则false

     (2)as 是将某个对象转换成某种类型,返回的是对象或是null

        如果转换成功了、返回对象,如果转换失败了、不会报错,而是返回一个null值

    3、委托

    关键词 delegate 

      方法的指针,当我们用delegate关键字声明委托时,编译器自动为我们生成类。

      委托是一个类,它定义了方法的类型,事件也是一种委托,但是是一种特殊的委托

       使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。

     委托使用:

         定义一种委托类型

         委托执行时要调用方法

         定义一个委托实例

         委托实例的调用

    // 在类下面,min 函数上面定义委托
     public  delegate  int  FirstDel ( int a , int b )
    ————————— min 函数  —————————
                              // FirstDel 与 JiaJian 的格式一样 
    JiaJian    jj   =   new   JiaJian ( );   // 返回值相同 都是 int             
    FirstDel   td   =   jj.JiaFa             // 参数相同 都是两个 int 
      ................
     td   =  jj . JianFa                  //先设立了 JiaJian 类 包含 JiaFa 、JianFa 两个方法
  • 相关阅读:
    USACO第三道题
    uva350 PseudoRandom Numbers
    uva10879 Code Refactoring
    Scrum 冲刺第一篇 晨曦
    WC.exe 晨曦
    [LeetCode 126] 单词梯II(Word Ladder II)
    [LeetCode 129] 根节点到叶子节点数字求和(Sum Root to Leaf Numbers)
    [LeetCode 125] 验证回文(Valid Palindrome)
    [LeetCode 123] 买入与卖出股票的最佳时机III(Best Time to Buy and Sell Stock III)
    [LeetCode 124] 二叉树最大路径和(Binary Tree Maximum Path Sum)
  • 原文地址:https://www.cnblogs.com/Tanghongchang/p/6722811.html
Copyright © 2011-2022 走看看