|
网站首页
|
JAVA文章
|
AppServers
|
Web开发
|
应用开发
|
资源下载
|
论坛
学好外语能够获得更多的国外先进编程技术 [enadd 2006年12月25日]
设为首页
加入收藏
联系站长
您现在的位置:
编程笔记网
>>
Web开发
>>
网络编程
>>
C#
>>
CSharpDoc
>> 文章正文
C#基础—关于类
【字体:
小
大
】
C#基础—关于类
作者:不详 文章来源:网络 点击数: 更新时间:2007-1-20
作者:佚名 文章来源:不详 点击数: 更新时间:2006-6-15 类实际上是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法。类定义了每个对象可以包含什么数据和功能,但类自己不能包含数据。比如一个类代表一个人,它就可以定义所以人相关的信息(身高、年龄、体重等)。使用时,事例化对象表示某一个人。
类的成员
可以分为两大类类本身所声明的以及从基类中继承而来的
类的成员有以下类型
成员常量,代表与类相关联的常量值
域,即类中的变量
成员方法,复杂执行类中的计算和其它操作
属性,用于定义类中的值并对它们进行读写
事件,用于说明发生了什么事情
索引,指示器允许像使用数组那样为类添加路径列表
操作符,定义类中特有的操作
构造函数和析构函数,分别用于对类的实例进行初始化
new 仅允许在嵌套类声明时使用表明类中隐藏了由基类中继承而来的
与基类中同名的成员 public 表示不限制对该类的访问 protected 表示只能从所在类和所在类派生的子类进行访问 internal 只有其所在类才能访问 private 只有对包.Net 中的应用程序或库才能访问 abstract 抽象类不允许建立类的实例 sealed 密封类不允许被继承 virtual 方法可以被其他派生类重写 override 方法重写继承的方法或抽象的方法 extern 方法在外部被另一种语言执行 使用internal 修饰符的类的成员是一种特殊的成员这种成员对于同一包中的应用
程序或库是透明的而在包.Net 之外是禁止访问的
使用下面的例子说明一下类的成员的访问修饰符的用法
程序清单10-1
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 的保护成员
}
}
静态成员和非静态成员
若将类中的某个成员声明为static ,该成员称为静态成员。类中的成员要么是静态,要么是非静态的。一般说来静态成员是属于类所有的。非静态成员则属于类的实例——对象。
using System;
class Test
{
int x;
static int y;
void F() {
x = 1; // 正确,等价于this.x = 1
y = 1; // 正确,等价于Test.y = 1
}
static void G() {
x = 1; // 错误不能访问 this.x
y = 1; // 正确,等价于Test.y = 1
}
static void Main() {
Test t = new Test();
t.x = 1; // 正确
t.y = 1; // 错误不能在类的实例中访问静态成员
Test.x = 1; // 错误不能按类访问非静态成员
Test.y = 1; // 正确
}
}
[1]
文章录入:enadd 责任编辑:enadd
上一篇文章:
漫谈C#编程中的多态与new关键字
下一篇文章:
C#的四个基本技巧
【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
最新热点
最新推荐
相关文章
C# 3.0语言详解之基本的语言…
C# 2.0与泛型
C# 2.0中泛型编程初级入门教…
关于C#的问答
C#中结构与类的区别
C#和VB.net语法对比图
C#的四个基本技巧
漫谈C#编程中的多态与new关键…
C# Namespace
C# 中的类型转换
网友评论:
(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
|
设为首页
|
加入收藏
|
联系站长
|
友情链接
|
版权申明
|
管理登录
|
Copyright ©2000 - 2005
Enadd
.com
备案序号:辽ICP备06005595号
QQ:1656107
站长:
enadd