
C#基础
Jacob Ni
工业自动化 工业4.0 智能制造 自动化测试 nihang1212@126.com
展开
-
C# null关键字用法
C# null用法null关键字代表空引用,不指向任何对象;null是引用类型变量的默认值;普通值类型的变量不能是null;可空值类型可以是null。使用场合条件测试if (lloyd == null){}希望对象被垃圾回收mc = new MyClass();mc = null;备注:String.Empty和null不同 string t = String.Empty 等原创 2017-01-13 12:58:52 · 650 阅读 · 0 评论 -
C# 关键字const和readonly对比
C# 关键字const和readonly对比二者区别const关键字修饰的字段只能在声明的时候初始。readonly关键字修饰的字段可以在声明的时候初始化,也可以在构造器中初始化。const修饰的字段值在编译时确定,readonly修饰的字段值在运行时确定。public static readonly uint timeStamp = (uint)DateTime.Now.Ticks; rea原创 2017-02-04 10:53:28 · 256 阅读 · 0 评论 -
C# 接口和抽象类的区别和使用场合(知识要点归纳总结)
C# 接口和抽象类的区别和使用场合(知识要点归纳总结)接口和抽象类的异同相同点二者都不能实例化;二者都通过继承实现中的重写(override)实现抽象方法;二者都是OOP的基础,实现各种设计模式。 4不同点接口支持多实现,而抽象类和具体类一样只能单一继承;接口只能定义抽象的方法,而抽象类除此以外可以定义具体方法;结构体能实现接口而不能继承抽象类;使用场合如果预计要创建组件的多个版原创 2017-01-20 13:42:57 · 2276 阅读 · 0 评论 -
C# 抽象类(知识要点归纳总结)
C# 抽象类(知识要点归纳总结)抽象类就像是具体类和接口之间的一个过渡。抽象类具有一接口的含有抽象方法(本质上接口中的方法就是抽象方法)的特性,也具有具体类的具体方法和属性的特性。抽象类的特点抽象类就像一个具体类 抽象类类的定义类似于具体类。抽象类可以有字段和方法也可以继承其他类。抽象类就像一个接口 继承抽象类的子类必须要实现该抽象类的所有抽象方法(没有语句和方法体的方法)。抽象类不能实例原创 2017-01-20 12:58:26 · 408 阅读 · 0 评论 -
C# 访问修饰符(知识要点归纳总结)
C# 访问修饰符(知识要点归纳总结)访问修饰符(access modifiers) 设定类和类成员的访问级别public表示任何人都可以访问同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员。 注:将一个类或类成员标志位public时,任何其他类的任何实例可以访问它。这是限制最弱的的访问修饰符。如果没有足够的理由,不要将类和类成员设置为public,否则会影响封装的效果。原创 2017-01-19 13:41:04 · 364 阅读 · 0 评论 -
C# 类型转换(知识要点归纳总结)
C# 类型转换(知识要点归纳总结)简介C#是一门强类型语言,即在编译时静态类型化的,因此变量在声明后就无法再次声明,或者无法存储其它类型的值,除非把该值转化成声明的类型。当需要将一种类型变量的值复制到另一种类型的变量或参数中是,就需要类型转换。 隐式转换:这是一种类型安全的转换,不会导致数据丢失,不需要特殊语法。显式转换(强制转换):显式转换需要强制转换运算符。在转换中可能丢失信息或者转换不成原创 2017-01-19 10:52:39 · 523 阅读 · 0 评论 -
C# Stream使用
C# Stream使用流(Stream)是.NET Framework为程序提供的读写数据的方法。每个流都是抽象类Stream的子类,已经内置类很多流类用来完成不同的工作Stream–>FileStream读写文件 Stream–>MemoryStream读写内存块数据 Stream–>NetworkStream读写其他计算机或设备数据 Stream–>GZipStream压缩数据便于下载和存原创 2017-02-09 10:58:13 · 2498 阅读 · 0 评论 -
C# 接口(知识要点归纳总结)
C# 接口(知识要点归纳总结)1.为什么需要接口?接口可以使一个类做多项工作而不依赖于继承, 因为继承会引入不需要的字段、属性和方法;通过接口能使用任何一个完成任务的类,即接口的引用可以指向任何一个实现了该接口的类的实例。比如,当接口作为函数的形参时,任何一个实现了该接口的类的实例都可以传递给该函数(这一点和子类实例传递给基类形参挺相似的)。 接口允许一个类用在多种不同的情况下。备注:原创 2017-01-18 15:42:52 · 560 阅读 · 0 评论 -
C# Stack使用
C# Stack使用使用场合如果总想使用最近存储的对象,使用Stack(栈),例如: - 放在卡车后面的家具 - 一摞书想看最近增加的书和List相比Queue的特点不能按任意索引增加或删除项增加对象时要压入(push)删除对象时要弹出(pop)代码示例using System;using System.Collections.Generic;namespace 栈{ int原创 2017-02-09 10:13:14 · 1527 阅读 · 0 评论 -
C# Queue使用
C# Queue使用使用场合如果所存储的第一个对象正是要使用的第一个对象,就要使用Queue(队列),例如: 沿着单向街道行进的车流排队的人不挂机等候客户支持热线服务的客户所有按先来先服务原则处理的情况和List相比Queue的特点不能按任意索引增加或删除项增加对象时要入队(enqueue)删除对象时,将第一个对象出队(dequeue)代码示例using System;usin原创 2017-02-09 09:51:20 · 1697 阅读 · 0 评论 -
C# 数组
C# 数组1. 简介数组(array) 可以跟踪大量相同类型的数据,比如一个高度列表。数组之所以特殊,是因为这是一组变量,却处理为一个对象。利用数组,可以存储和修改多个数据,而不必单独的跟踪每个变量。2.数组的声明和初始化声明数组datatype[] arrayName;datatype 用于指定被存储在数组中的元素的类型。[ ]指定数组的秩(维度)。秩指定数组的大小。- arrayName原创 2017-01-13 11:40:54 · 258 阅读 · 0 评论 -
C# 接口
C# 接口简介对于接口的作用,在一些小的项目上,很难看出其发挥的优势。这就使一些经常的做小项目的开发人员,做时间久了就感觉不到它有什么好的,有时候写起来还麻烦,干脆不用了。其实,在一些大项目上,接口的作用是发挥地相当的明显的。 比如:如果你开发业务逻辑代码,当你好不容易的实现了它全部的功能,突然用户需求要改,你在修改你代码的同时,调用你代码的其它人也会改,如果代码关联性强的话,会有很多人都要改动代原创 2017-01-13 08:34:46 · 282 阅读 · 0 评论 -
C# 可空类型(Nullable)
C# 可空类型(Nullable)C# 可空类型(Nullable)C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个 null 值 1. 例如,Nullable< Int32 >,读作”可空的 Int32”,可以被赋值为 -2,147,483,648 到 2,147,483,647 之间的任意值,也可以被赋值为 null 值原创 2017-01-12 13:52:54 · 799 阅读 · 0 评论 -
C# 类继承(知识要点归纳总结)
C# 类继承(知识要点归纳总结)1.覆盖有时希望子类继承基类的大部分行为,但是并不是所有行为。如果希望改变一个类继承的某些行为,可有覆盖(override)这些方法。实现方法:为基类中的方法增加virtual关键字。 子类智能覆盖标志有virtual关键字的方法,这就告诉C#允许子类覆盖这些方法。//基类class Bird{ public virtual void Fly()原创 2017-01-17 11:48:33 · 766 阅读 · 0 评论 -
C# this关键字用法
C# this关键字用法这个关键字引用类的当前实例,并且也用作扩展方法第一个参数的修饰符下面是this关键字的常见用法限定被相似的名字隐藏的类成员,例如:public Employee(string name, string alias) { // 用 this 来限定 fields, name and alias:翻译 2017-01-13 12:40:23 · 620 阅读 · 0 评论 -
C# 浮点数和货币值常量
C# 浮点数和货币值常量F后缀指示float,M表示decimal。float a= 15.6F;decimal b=36.12M;原创 2017-01-13 13:09:15 · 682 阅读 · 0 评论 -
C# protected修饰词
概述:假设A为基类,B为子类,被protected修饰的成员在基类中 1. 在A中可直接访问 2. 在B中可直接访问; 3. 在A中通过A或B的实例访问; 4. 在B中通过B的实例访问,不能通过A的实例访问; 5. 在A和B外部的类中,无法访问;总结:基类中访问无限制;子类中直接访问或通过子类实例访问代码示例:using System;namespace TestProtecte原创 2017-04-19 22:01:04 · 1015 阅读 · 1 评论