主题:C#中的类是什么?为什么用?什么时候用?请高手指点详细点
aiyalei
[专家分:0] 发布于 2010-11-26 20:14:00
C#中的类是什么?为什么用?什么时候用?请高手指点详细点
回复列表 (共6个回复)
沙发
zlj123 [专家分:0] 发布于 2011-10-28 16:49:00
你说的是不是 class,class关键字表示类,在C#中编写的任何代码都应该包含在一个类里面,类主要包含在一个命名空间里。[url]http://www.nengdongyingyu.org[/url]
板凳
zlj123 [专家分:0] 发布于 2011-11-02 13:38:00
类
类是面向对象的程序设计的基本构成模块。从定义上讲,类是一种数据结构,这种数据结构可能包含数据成员、函数成员以及其它的嵌套类型。其中数据成员类型有常量、域和事件;函数成员类型有方法、属性、索引指示器、操作符、构造函数和析构函数。
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 楼
zlj123 [专家分:0] 发布于 2011-11-02 13:40:00
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 楼
aqua678 [专家分:90] 发布于 2011-12-08 10:36:00
类是一个模板.
面对对象编程的一个表现形式.
写程序,一定要有oo思想.
5 楼
菜鸟之神 [专家分:0] 发布于 2012-04-11 12:20:00
反正就是为了继承什么的,让你更方便
6 楼
cctvtcctcc [专家分:0] 发布于 2012-07-13 19:07:00
类似于继承的模块 方便调用 同时还有一些其他功能
我来回复