zoukankan      html  css  js  c++  java
  • C# 类 (10)

    NameSpace

    命名空间是一系列 类型的集合,比如很多方法,很多类,集合在一个空间(myspace)里,谁想用就先 using myspace,然后直接用
    不using myspace的话,想用里面的某个方法 就得 myspace.methodA,得加上前缀

    像上面这个这个,前缀太长了,层层索引,boring,我们在开头cs文件 using System.IO.File ,然后就可以直接ReadText(“test.txt”)了


    为啥需要命名空间?
    小项目无所谓,都放在一个文件里,相互调用,但是随着项目越来越大,最直观的就是分开做,每个命名空间分开文件夹,一目了然
    而且vs 会自动把你定义在不同文件夹里的class 归属到对应的namespace里(文件夹名其实一般都默认是那个namespace名字)

    .Net框架本身就是一个很好的例子,如果把所有的class都定义到一起,那简直要疯了,所以要分开做,以 system为根目录,层层分类
    system.IO system.Net system.Net.Mail


    命名冲突
    前面在读文本文件的时候我们用到了File.ReadAllTxt  这里面有file这个类,我们也可以在myspace里也构造一个File class,散落在不同命名空间里的同样的类名不会冲突
    但是 你如果 using 这两个namespace,这时候你再用File,编译器就不知道从哪个里面取了,这时候就要using一个(你用的最多的那个),剩下的那个用全路径去调用

    使用”别名”

    一个层层递进的方法,前缀太长了,我们可以把前面的命名空间给 赋值成一个别名,如上图,简化一下

  • 相关阅读:
    方法的调用机制
    类的成员之二:方法
    类的成员之一:属性
    关键字static
    构造器
    this关键字
    递归方法(recursion)
    方法重载(二)
    GTID 跳过脚本
    mydumper 找不到libmysqlclient.so.20
  • 原文地址:https://www.cnblogs.com/springbrotherhpu/p/11555633.html
Copyright © 2011-2022 走看看