自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 问答 (1)
  • 收藏
  • 关注

原创 实现继承

前面文章学习了继承的一些基本概念,下面就说说继承的具体实现。如果要声明一个类派生于另一个类,可以使用下面的语法:class MyDerivedClass : MyBaseClass{//函数和数据成员等}注意:注意C#不支持私有继承,因此基类名上没有public或private限定符。支持私有继承会大大增加语言的复杂性。如果类(或结构)也派生于接口,则用逗号分隔开基

2012-02-21 19:46:51 534

原创 继承

学习了这么久,一直都是在学关于面向对象语言。面向对象的三大特性是什么呢?很简单,学过的人都知道,就是“封装,继承,多态”,可是这三大特性有多少人能够真正明白呢。其实我学了这么久也就知道些简单的概念,下面我在回顾下,把三大特性重新学习下。先学习下继承吧。不多说了,下面就开始学习去了。前面学习的,所有的类最终都派生于System.Object类,但并没有说明如何创建继承类的层次结构。下面就给好好学

2012-02-21 11:12:40 533

原创 Object类

所有的.NET类都派生于System.Object。实际上,如果在定义类时没有指定基类,编译器就会自动假定这个类派生于Object。(对于结构,这个派生是间接的:结构总是派生于System.ValueType,System.ValueType派生于System.Object)除了自己定义的方法和属性外,还可以访问为Object定义的许多公共或受保护的成员方法。这些方法可以用于自己定义的所有其他

2012-02-21 10:00:36 1757

翻译 部分类/静态类

部分类 partial关键字允许把类、结构或接口放在多个文件中。一般情况下,一个类是存储在单个文件中的,但有的时候,多个开发人员需要访问同一个类,或者某种类型的代码生成器生成了一个类的某部分,所以把类放在多个文件中是有用的。partial关键字的用法是:把partial放在class、struct或interface关键字的前面。//BigClassPart1.cspartial

2012-02-20 10:14:38 8148

翻译 结构

结构与类的区别是它们在内存中的存储方式(类是存储在堆(heap)上的引用类型,而结构是存储在堆栈(stack)上的值类型)、访问方式和一些特征(如结构不支持继承)。较小的数据类型使用结构可提高性能。但在语法上,结构与类非常相似,主要的区别是使用关键字struct代替class来声明结构。虽然结构是值类型,但在语法上常常可以把它们当作类来处理。为结构定义函数与为类定义函数完全相同. str

2012-02-19 15:29:42 382

翻译 匿名类型

var关键字,用于表示隐式类型化的变量。var与new关键字一起使用时,可以创建匿名类型。匿名类型只是一个继承了Object的、没有名称的类。该类的定义从初始化器中推断,类似于隐式类型化的变量。var captain = new {FirstName = "James", MiddleName = "T", LastName = "Kirk"};这会生成一个包含FirstName、Midd

2012-02-19 14:11:22 487

原创 只读字段

常量(const)的概念就是一个包含不能修改的值的变量,常量是C#与大多数编程语言共有的。但是,常量不必满足所有的要求。有时可能需要一些变量,其值不应改变,但在运行之前其值是未知的。C#为这种情形提供了另一个类型的变量:只读字段(readonly)。readonly关键字比const灵活得多,允许把一个字段设置为常量,但可以执行一些运算,以确定它的初始值。其规则是可以在构造函数中给只读字段赋值

2012-02-19 11:54:53 588

翻译 类成员

类中的数据和函数称为类的成员。除了这些成员外,类还可以包含嵌套的类型(例如其他类)。类中的所有成员都可以声明为public(此时可以在类的外部直接访问它们)或private(此时,它们只能由类中的其他代码来访问)。C#中protected(表示成员仅能由该成员所在的类及其派生类访问)数据成员数据成员包含了类的数据-- 字段、常量和事件。数据成员可以是静态数据(与整个类相关)或实例数据(类的

2012-02-17 15:54:07 3113

原创 类和结构

做了这么久,虽然说做点东西没什么问题,可是一些概念的东西有时候还是有点模糊。虽然有人说最重要的还是实践,不过我觉得实践固然很重要,不过对于理论的东西也不能轻视的。毕竟理论是可以指导实践的。理论的东西在有的时候还是能发挥一定的作用的。前面也说了点基础的东西,这边就再写点了。今天就写点关于“类和结构”的东西吧。类和结构      首先,类和结构实际上都是创建对象的模板,每个对象都包含数据,

2012-02-17 11:59:18 445

翻译 C#编程规则

用于标识符的规则    标示符是给变量、用户定义的类型(例如类和结构)和这些类型的成员制定的名称。标示符区分大小写。确定在C#使用标示符有两个规则:● 它们必须以一个字母或下划线开头,但可以包含数字字符;● 不能把C#关键字用作标识符。C#包含保留关键字abstractdoinProtectedtrue

2012-02-15 09:49:40 630

原创 C#预处理器指令

常用关键字外,C#还有许多名为"预处理器指令"的命令。这些命令从来不会转化为可执行代码中的命令,但会影响编译过程的各个方面。例如,使用预处理器指令可以禁止编译器编译代码的某一部分。如果计划发布两个版本的代码,即基本版本和有更多功能的企业版本,就可以使用这些预处理器指令。在编译软件的基本版本时,使用预处理器指令还可以禁止编译器编译与额外功能相关的代码。另外,在编写提供调试信息的代码时,也可以使用预处

2012-02-10 11:36:03 1569

原创 控制台输入/输出

要从控制台窗口中读取一行文本,可以使用Console.ReadLine()方法。它会从控制台窗口中读取一个输入流(在用户按下回车键时停止),并返回输入的字符串。写入控制台也有两个对应的方法:● Console. Write()方法将指定的值写入控制台窗口。● Console.WriteLine()方法类似,但在输出结果的最后添加一个换行符。所有预定义类型(包括object) 都有这

2012-02-10 10:40:34 1135

原创 Main()方法

C#程序是从Main()方法开始执行的。这个方法必须是类或结构的静态方法,并且其返回类型只能是void或int。虽然显式指定public修饰符是很常见的,因为按照定义,必须在程序外部调用该方法,但我们给该方法指定什么访问级别并不重要,即使把该方法标记为private,它也可以运行。多个Main()方法:编译C#控制台或Windows应用程序时,默认情况下,编译器会在类中查找与上述签名匹

2012-02-09 16:09:21 1023

原创 命名空间

命名空间提供了一种组织相关类和其他类型的方式。与文件或组件不同,命名空间是一种逻辑组合,而不是物理组合。在C#文件中定义类时,可以把它包括在命名空间定义中。以后,在定义另一个类,在另一个文件中执行相关操作时,就可以在同一个命名空间中包含它,创建一个逻辑组合,告诉使用类的其他开发人员:这两个类是如何相关的以及如何使用它们namespace CustomerPhoneBookApp{usi

2012-02-08 10:38:55 438

原创 数组(一维数组)

在声明C#数组时,要在各个元素的变量类型后面加上一组方括号,(注意数组中的所有元素必须有相同的数据类型)注意:Visual Basic用户注意,C#中的数组使用方括号,而不是圆括号。C++用户很熟悉方括号,但应仔细查看这里给出的代码,因为声明数组变量的C#语法与C++语法并不相同。例如,int表示一个整数,而int[]表示一个整型数组:int[] integers;要初始化特定

2012-02-08 10:13:29 440

原创 枚举

枚举是用户定义的整数类型,在声明一个枚举时,要指定该枚举可以包含的一组可接受的实例值。不仅如此,还可以给值指定易于记忆的名称。 public enum TimeOfDay{Morning = 0,Afternoon = 1,Evening = 2} class EnumExample{public static int Main(){WriteG

2012-02-07 13:42:06 371

原创 控制程序流

控制程序流的语句,它们不是按代码在程序中的排列位置顺序执行的条件语句:常见的条件语句有下面几种。1. if语句对于条件分支,C#继承了C和C++的if...else结构。对于用过程语言编程的人来说,其语法是非常直观的:if (condition) {statement(s)}else {statement(s)} 2. switch语句w

2012-02-03 15:38:00 432

原创 数据类型

值类型和引用类型在开始学习C#中的数据类型之前,理解C#把数据类型分为两种是非常重要的,这个问题经常会在一些面试题中出现。所以要理解清楚;从概念上看,其区别是值类型直接存储其值,而引用类型存储对值的引用。值类型默认分配在栈上,但可以通过装箱操作将值类型数据复制到堆上,但引用类型仅能被clr分配到堆中。引用类型的数据保存在堆中,但引用地址保存在栈上。注意区分某个类型是值类型还是引

2012-02-03 11:55:43 397

原创 变量

变量的初始化是C#强调安全性的另一个例子。简单地说,C#编译器需要用某个初始值对变量进行初始化,之后才能在操作中引用该变量。大多数现代编译器把没有初始化标记为警告,但C#编译器把它当作错误来看待。这就可以防止我们无意中从其他程序遗留下来的内存中获取垃圾值。C#有两个方法可确保变量在使用前进行了初始化:● 变量是类或结构中的字段,如果没有显式初始化,创建这些变量时,其值就默认是0(类和结构在后面讨论

2012-02-03 11:12:10 419

原创 从零开始

虽然在公司做了一年多的.NET开发,不过总觉得自己的技术没什么长进。所以我打算从零开始学习一下基础知识,从新给自己所学所做的系统化一下。不多说了,今天就开始我的第一天重新学习吧。从零开始的话,那我就从控制台开始吧!  using System;using System.Text;namespace C_Sharp{ class Program {

2012-02-03 10:30:18 349

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除