常量 字段和属性类成员包括变量和方法。如果希望其他类能够访问成员变量的值,就必须定义成公有的,而将变量设为公有public,那这个成员变量的就可以被任意访问(包括修改,读取),这样不利于数据安全。 C#通过属性特性读取和写入字段(成员变量),而不直接直接读取和写入,以此来提供对类中字段的保护。属性可用于类内部封装字段。属性是C#面向对象技术中封装性的体现。属性和字段的区别:属性是逻辑字段,是字段的扩展,并不占用...
在C#中通过使用方法来获取返回值时,通常只能得到一个返回值。因此,当一个方法需要返回多个值的时候,就需要用到ref和out,那么这两个方法区别在哪儿呢?MSDN: ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字。 out 关键字会导致参数通过引用来传递。这与 ref 关键字类似,不...
1、命名空间: 用法:(1)建立:建立一个命名空间,如T1,语法格式:namespace T1。 (2)使用:使用一个命名空间,两种方法a)使用using指令,如在VS中建立一个控制台应用程序后 b)命名空间.类名.方法名举例:using T1; namespace ConsoleApplication1 {class Class1{static void Main(string[] args){Zhou zhou = new Zhou();zhou.Example();}} }namespace T1 {class Zhou{public void Example(){Console.WriteLine("命...
一:认识程序集 只要是使用VS就会和程序集打交道,我们通过编辑和生产可执行程序就会自动生成程序集。那么什么事程序集呢,.net中的dll与exe文件的都是程序集(Assembly)。 可以看做是一堆相关类打包的包,相当于java中的jar包(*); 程序集包含:类型元数据,程序集元数据,IL代码,资源文件 类型元数据:描述在代码中定义的每一类型和成员的二进制形式。 程序集元数据:程序集清单,版本号,名称等; ...
C#基础之checked与 unchecked的使用以上都是C#中的两个关键字的使用、据官网给出的相关介绍是:C# 语句既可以在已检查的上下文中执行,也可以在未检查的上下文中执行。在已检查的上下文中,算法溢出引发异常。 在未选中的上下文中忽略算术溢出并将结果截断,方法是:丢弃任何不适应目标类型的高序位。checked 指定已检查的上下文。unchecked 指定未检查的上下文。1、checkedchecked 关键字用于对整型类型算术运算和转换显式启用溢出...
C# 读作 C sharp.cs 是用C#语言编写的源程序代码的文件后缀名。控制台应用程序创建步骤:打开vs,点击文件,选择“新建”-“项目”,选择模板 Visual C# ,框架 .NET Framework ,应用台控制程序。选择保存位置,并给文件起名。 在main函数中编写代码 Console WriteLine("要输出的内容"); //用于输出内容Console ReadLine(); //等待用户输入,按回车结束,防止程序闪退。using System.Text;namespace 练习1 {class Progra...
在第一章我们了解了C#的输入、输出语句后,我这一节主要是介绍C#的基础知识,本节的内容也是后续章节的基础,好的开端等于成功的一半。在你阅读完本章后,你就有足够的C#知识编写简单的程序了。但还不能使用继承或其它面向对象的特征。 本章主要针对以下几个部份来进行讲解: 1、电脑是由什么来存储所使用的数据? 2、基本数据类型有哪些? 3、如何声明变量和赋值? 4、变量和常量的区别? 5、不同数据类型之间是如何转...
字符串的不可变性(恒定性):当你给一个字符串重新赋值之后,老值并没有被销毁,而是重新开辟了一块空间存储新值IL(中可以查看)所以我们使用字符串扩展方法时,其实都是一个新的对象(Trim)字符串的驻留机制 //CLR中维护着一个驻留池(Intern Pool)的散列表(HashTable),这个表记录了所有在代码中使用字面量声明的字符串实例的引用 //使用字面量声明的字符串都会被记录到散驻留池(散列表 键为字符串 值为字符...
原文:【原创】开源Math.NET基础数学类库使用(12)C#随机数扩展方法 本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html开源Math.NET基础数学类库使用总目录:http://www.cnblogs.com/asxinyu/p/4329737.html前言 真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的,是不可见的。而计算机中的随机函数是按照一定算法模拟...
一、前言 网上有许多的多线程断点续传操作,但总是写的很云里雾里,或者写的比较坑长。由于这几个月要负责公司的在线升级项目,所以正好用到 代码如下: 1using System;2using System.Collections.Generic;3using System.Linq;4using System.Text;5using System.IO;6using System.Threading;7using System.Threading.Tasks;8 9namespace ConsoleStream10{11class Program12 {13staticvoid Main(string[] args)14 ...
函数1、概念:是一个带有输入参数、输出参数、返回值的代码块。2、写法:修饰符 返回值类型 函数名(输入参数,输入参数){ 方法段 return 返回值;}3、注释:(1)输入参数格式:参数类型+变量名。可以不写(2)返回值类型---void为无返回值,函数体里面不能写return(3)“///”可以调出函数的注释,方便在引用时查看(4)需要与主函数在同一命名空间下4、例:publicint jiafa(int a,int b) {return a+b; }5、调用方法:在...
今天写程序的时候调用到一个第三方的DLL文件,本机调试一切都正常,但是程序不是到服务器以后一直提示一个BUG:"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系"。 后来把DLL文件进行反编译,发现是在获得请求的时候出错了。 引用 WebResponse response = WebRequest.Create("https://……").GetResponse(); 定义一个类,来对远程X.509证书的验证,进行处理,返回为true.我们要自己定义一个类,然后在客户单调用WCF服...
我第一次接触“线程”的概念时,觉得它深奥难懂,看了好多本书,花了很长时间才领悟到它的真谛。现在我就以一个初学者的心态,把我所理解的“多线程”描述给大家。这一次是系列文章,比较完整的展示与线程相关的基本概念。希望对初学者有所帮助。如果你是高手,请你别继续看,会浪费你宝贵的时间。一、基本概念什么是进程?当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。 而一个进程...
今天我们将以下错误和异常。我们知道程序出现错误的原因有些时候并不是程序员编写的应用程序的原因,有时应用程序会因为终端用户的操作而发生错误。所以我们作为程序猿,就应该要避免类似这样的情况,做出预测可以出现的错误,应用程序应该如何处理这些错误与异常操作。这里就要说到我们今天要讲解的C#处理错误的机制。使用try-catch-finally捕获异常:try块包含的代码组成了程序的正常操作部分,但可能遇到某些严重的错误。catch块...
1.c#中访问修饰符 1.1描述修饰符级别适用成员解释public公开类及类成员对访问成员没有级别限制private私有类成员只能在类的内部访问protected受保护的类成员只能在类的内部访问,不管该类和派生类是不是在同一程序集中internal内部的 类和类成员只能在同一程序集(Assembly)中访问,其编译后的文件扩展名往往是“.DLL”或“.EXE”protected internal受保护的内部 类成员如果是继承关系,不管是不是在同一程序集中都可以访问;如果...