Fork me on GitHub

随笔分类 -  C#语法基础

摘要:System.Xml.XmlReader和System.Xml.XmlWriters是两个抽象类,XmlReader提供了对于XML数据的快速,非缓存,只进模式的读取器,XmlWriter表示一个编写器,该编写器提供快速,非缓存,只进的方式来生成包含XML数据的流文件。XmlReader与SAX读取器类似,不过前者是提取模式(只进只读的游标),后者是推送模式(将事件推送到应用程序)。XmlReader的优点是:1.简化状态管理2.可以有多个输入流3.提取模式可以作为推送模式的基础,反之不行。4.提供一个可以将字符串直接写入缓冲区,避免多余字节的的复制。5.有选择的处理XML流,可以预先设置处理 阅读全文
posted @ 2012-04-07 00:33 Halower 阅读(759) 评论(0) 推荐(2) 编辑
摘要:FileStream 1 static void Main(string[] args) 2 { 3 //创建FileStream对象需要指定 文件名,打开模式,访问模式,共享模式 4 //1.调用本身的构造函数创建流 5 FileStream fs1 = new FileStream(@"F:\1.txt", FileMode.Open, FileAccess.ReadWrite,FileShare.ReadWrite); 6 //2.利用File类或者FileInfo类的O... 阅读全文
posted @ 2012-04-02 01:50 Halower 阅读(544) 评论(0) 推荐(2) 编辑
摘要:我们在使用Main()方法的时候有没有注意过入口参数args的传入传出的值是什么呢?或许这个问题小的都没人注意。刚刚使用IO命名空间下的,Enveriment.Environment.GetCommandLineArgs();获取观察了一下,就会发现,这里的args参数我们是可以自己修改,也可以由程序返回,同时也可以执行前使用cmd方式传入,也可以固定的方式输入,方法很多,我是菜鸟刚学也就发现了这么一点点,博客园的高手们就是好啊,对我这样的超级大菜鸟还是很包容的,有问题大家就帮帮我,目前主攻文学,哲学,神学,但是遇到程序的问题周围没人学这个,只能一个人解决,问题很多啊,大家可以给我指导一下。好 阅读全文
posted @ 2012-03-14 00:27 Halower 阅读(11189) 评论(47) 推荐(6) 编辑
摘要:它与this关键字一样,都是作为类的实例(因此不能调用基类的静态成员和抽象成员)简写或者替代而存在的,只不过this关键字用于替代本类的实例,base关键字用于替代基类的实例,用法很简单,其访问基类的形式如下:base.【标识符】 base[【表达式列表】] 这个类型的一看便可以大概猜测多用于基类实例的索引器操作,在我下面演示的代码中你会看到它的用法。对于 base.【标识符】的访问形式再次说明一下:对于非虚方法,这种访问仅仅是对基类实例成员的直接访问,完全等价于((base)this).【标识符】。对于虚方法,对于这种访子类重写该虚方法运用这种访问形式也是(禁用了虚方法调用的机制)对基类实. 阅读全文
posted @ 2012-03-07 20:21 Halower 阅读(513) 评论(0) 推荐(0) 编辑
摘要:as 运算符类似于强制转换操作。但是,如果无法进行转换,则 as 返回 null 而非引发异常。as 运算符只执行引用转换和装箱转换。as 运算符无法执行其他转换,如用户定义的转换,这类转换应使用强制转换表达式来执行。expression as type等效于(但只计算一次 expression)expression is type ? (type)expression : (type)nullas 运算符用于在兼容的引用类型之间执行转换。例如:// cs_keyword_as.cs// The as operator.using System;class Class1{}class Clas 阅读全文
posted @ 2012-03-07 20:19 Halower 阅读(657) 评论(0) 推荐(0) 编辑
摘要:刚刚看MSDN的一个例子无意发现的小技巧,大家一看就明白了,不过好像蛮有用的,先记下咯,以后慢慢研究。using System;namespace NewLine{ class Test { static void Main() { string s1 = "白日依山尽"; string s2 = "黄河入海流"; string s3 = "欲穷千里目"; string s4 = "更上一层楼"; Console.WriteLine("{0}{1}{0}{2}{0}{3}{0}{4}",Envi 阅读全文
posted @ 2011-11-14 23:13 Halower 阅读(290) 评论(0) 推荐(1) 编辑
摘要:结构和类很相似,也可以包含数据成员和函数成员,但是与类不同,结构是一种值类型,(我们可以理解为一种特殊的值类型所以不存在继承的问题)为其分配数据不需要从托管堆中分配存储器。结构类型的变量直接包含了该结构的数据,而类类型的变量所包含的只是对相应对象的一个引用。下面总结一下结构和类的不同:l结构是值类型,对结构类型的变量赋值将创建所赋值的一个副本。l结构实例的默认值不是null,而是具有默认值的初始值。l在结构和类中this的意义不一样。l结构不支持继承(所以结构成员的声明可访问性不能是protected,protected internal,结构中的函数成员不能是abstract 或者virtu 阅读全文
posted @ 2011-11-07 20:43 Halower 阅读(437) 评论(0) 推荐(0) 编辑
摘要:以下是System.Nullable<T>在FCL中的定义。 Code 1 [Serializable, StructLayout(LayoutKind.Sequential)] 2 public struct Nullable<T> where T :struct 3 { 4 private Boolean hasValue= false; 5 internal T value= default(T); 6 7 public Nullable(T value) 8 { 9 this.value= value;10 this.hasValue= true;11 }12 阅读全文
posted @ 2011-11-05 17:17 Halower 阅读(444) 评论(0) 推荐(1) 编辑
摘要:●值参数 :一个值参数相当于一个局部变量,当使用值参数的时候,将会分配一个新的存储位置,将实参拷贝到该位置,并将该拷贝值传递给该方法。因此,值参数只能将值带进方法,但是不能带出方法,而不会影响实参的值。●引用参数:当使用引用参数的时候,将不会分配一个新的存储位置,In other words,引用参数能将值带进方法,也能带出方法,因而会影响实参的值。如下例:using System;namespace prg1{ class Paramstest { //值参数使用演示 public static void Transposition_1(int a, int b) { int temp =. 阅读全文
posted @ 2011-10-24 21:58 Halower 阅读(768) 评论(0) 推荐(0) 编辑
摘要:在学习MSDN的过程中加入一点自己的理解:先学习类实例使用this 以下是 this 的常用用途:限定被相似的名称隐藏的成员,例如:public Employee(string name, string alias) { this.name = name;//此处的this.name即代表字段name,而非参数name this.alias = alias;}声明索引器,例如:public int this [int param]{ get { return array[param]; } set { array[param] = value; }}/*这个之后单独开一页学习下索引器,索引器可 阅读全文
posted @ 2011-10-20 14:51 Halower 阅读(229) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示