|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
前面讲到如何构造bbs对象,有朋友要求我简朴介绍一下c#里如何构造对象,下面我就简朴说一下,算是补上这一课吧。 C#里的类(Class),也可以叫做对象(object),它由以下几部分组成:成员变量,属性和方式,其中必不可少的是这个类不带任何参数的构造函数,它不指定返回类型,作用是初始化类的成员变量、分配内存等。和c++不同,c#类只有构造函数,不需要析购函数,也就是说你只需要为成员变量分配内存,而不必要显式的释放内存,这是因为c#和java相同都是通过垃圾收集器来释放内存。明白这些,我们就可以构造一个最简朴的类,一个什么也不做的类: public class MyClass { public MyClass(){} ; } 要使用时只需要简朴的new一个出来就行了,象这样:MyClass myClass1 = new MyClass() ;不要怀疑,你的确已经创建了一个对象,尽管它什么也不做:)。下面我们给它加一个私有字符型成员变量m_strTitle,并且在构造函数里初始化这个成员变量,整个类的定义就变成这样: public class MyClass { //私有成员变量 private string m_strTitle ; //构造函数 public MyClass() { m_strTitle = "我已经被赋初值了" ; } } 注重定义成员变量的这行代码:private string m_strTitle ; 其中string好理解,说明m_strTitle是string类型的,那么最前面的private是什么作用呢?这个private(私有)说明这个成员变量是私有的,只有这个类内部的函数可以使用,而其他任何地方包括子类的函数都不能使用它,除了private,你还可以定义成public(公共)和protected(保护),public表明这个成员变量在任何地方都可以使用,而protected表明这个变量只能在本类或子类中使用。所以,假如我们想要使用这个成员变量,可以把它定义成public,但对于面向对象编程来说这不是个好的编程习惯,因为它破坏了类的封装性,在c++里好的方式是再定义公共函数来存取这个私有变量,而c#里提供了一个更加方便的方式,那就是属性(property),现在我们把这个属性Title加上: public class MyClass { //私有成员变量 private string m_strTitle ; //属性 public string Title { get { return this.m_strTitle ; } set { this.m_strTitle = value ; } } //构造函数 public MyClass() { m_strTitle = "我已经被赋初值了" ; } } 返回类别: 教程 上一教程: 使用索引服务器 - 创建ASP页面 下一教程: 正则表达式简介(12) 您可以阅读与"ASP.NET高级教程(3):对象"相关的教程: · ASP.NET高级教程(3.2):对象 · ASP.NET高级教程(2.2):转变编程思维 · ASP.NET高级教程(1):ASP.NET还是ASP+? · asp.net高级教程(一)-asp.net还是asp+ ? · ASP.NET高级应用(3) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |