回 帖 发 新 帖 刷新版面

主题:C#中的类是什么?为什么用?什么时候用?请高手指点详细点

C#中的类是什么?为什么用?什么时候用?请高手指点详细点
0

回复列表 (共6个回复)

沙发


你说的是不是 class,class关键字表示类,在C#中编写的任何代码都应该包含在一个类里面,类主要包含在一个命名空间里。[url]http://www.nengdongyingyu.org[/url]

板凳



类是面向对象的程序设计的基本构成模块。从定义上讲,类是一种数据结构,这种数据结构可能包含数据成员、函数成员以及其它的嵌套类型。其中数据成员类型有常量、域和事件;函数成员类型有方法、属性、索引指示器、操作符、构造函数和析构函数。

1.    C#中类的声明
类的声明格式如下:

attributes class-modifiers class identifier class-base class-body;

其中attributes、class-modifiers、class-base和class-body为可选项。Attributes为属性集,class-modifiers为类的修饰符,关键词class后面跟随类的名称indentifier,class-base和class-body表示继承方式和基类名。

类的修饰符

类的修饰符可以是以下几种之一或者是它们的组合(在类的声明中同一修饰符不允许出现多次):

●new---仅允许在嵌套类声明时使用,表明类中隐藏了由基类中继承而来的、与基类中同名的成员。

●public---表示不限制对该类的访问。

●internal---只有其所在类才能访问。

●private---只有对包.Net中的应用程序或库才能访问。

●abstract---抽象类,不允许建立类的实例。

●sealed---密封类,不允许被继承。本文发表于www.bianceng.cn(编程入门网)

使用类的实例

使用new关键字可以建立类的一个实例,比如下面的代码:

class A{}
class B{
   void F{
       A a=new A();
   }
}在类B的方法F中创建了一个类A的实例。

类的继承声明

我们使用如下代码表示类B从类A中继承:

class A{}

class B:A{}

有关C#中的继承机制我们将在第四部分进行详细讨论,在这里要事先声明的一点是:C#中的类只支持单继承。
[url]http://www.beidaqingniao.org[/url]

3 楼

2.    类的成员
类的成员可以分为两大类:类本身所声明的,以及从基类中继承而来的。

类的成员有以下类型:

●成员常量,代表与类相关联的常量值。

●域,即类中的变量。

●成员方法,复杂执行类中的计算和其它操作。

●属性,用于定义类中的值,并对它们进行读写。

●事件,用于说明发生了什么事情。

●索引指示器,允许象使用数组那样为类添加路径列表。

●操作符,定义类中特有的操作。

●构造函数和析构函数,分别用于对类的实例进行初始化和销毁。

包含有可执行代码的成员被主食库是类中的函数成员,这些函数成员有方法、属性、索引指示器、操作符、构造函数和析构函数。
2.1  C#中对类的成员的访问
在编写程序时,我们可以对类的成员使用不同的访问修饰符,从而定义它们的访问级别。

公有成员

C#中的公有成员提供了类的外部界面,允许类的使用者从外部进行访问。公有成员的修饰符为public,这是限制最少的一种访问方式。

私有成员

C#中的私有成员仅限于类中的成员可以访问,从类的外部访问私有成员是不合法的。如果在声明中没有出现成员的访问修饰符,按照默认方式成员为私有的。私有成员的修饰符为private。

保护成员

为了方便派生类的访问,又希望成员对于外界是隐藏的,这时可以使用protected修饰符,声明成员为保护成员。

内部成员

使用internal修饰符的类的成员是一种特殊的成员。这种成员对于同一包中的应用程序或库是透明的,而在包.Net之外是禁止访问的。

使用下面的例子说明一下类的成员的访问修饰符的用法。

using System;
class Vehicle //定义汽车类
{
  public int wheels; //公有成员:轮子个数
  protected float weight;  //保护成员:重量
  public void F(){
      wheels=4; //正确,允许访问自身成员
      weight=10; //正确,允许访问自身成员
  }
}
class train //定义火车类
{
  public int num; //公有成员:车厢数目
  private int passengers; //私有成员:乘客数
  private float weight; //私有成员:重量
  public void F(){
      num=5; //正确,允许访问自身成员
      weight=100; //正确,允许访问自身成员
      Vehicle v1=new Vehicle();
      V1.wheels=4; //正确,允许访问v1的公有成员
      //v1.weight=6; 错误,不允许访问v1的保护成员,可改为:
      weight=6;
  }
}
class Car:Vehicle //定义轿车类
{
  int passengers; //私有成员:乘客数
  public void F(){
     Vehicle v1=new Vehicle();
     v1.wheels=4; //正确,允许访问v1的公有成员
     v1.weight=6; //正确,允许访问v1的保护成员
  }
}

4 楼

类是一个模板.
面对对象编程的一个表现形式.
写程序,一定要有oo思想.

5 楼

反正就是为了继承什么的,让你更方便

6 楼


类似于继承的模块  方便调用  同时还有一些其他功能

我来回复

您尚未登录,请登录后再回复。点此登录或注册