一、C#中类的成员
1. 类的成员
类中的数据和函数都称为类的成员。类的成员可以分为两类:
?类本身所声明的。
?从基类中继承来的。
如果在类声明中没有指定基类,则该类将继承System.Object类的所有成员。
2. 成员的类别
类的成员有以下几种类别:
注:C#中的类成员可以是任意类型,包括数组和集合。
3. 类的成员的访问级别
?public:声明为公有成员,访问不受限制。公有成员提供了类的外部界面,允许类的使用者从外部进行访问。
?protected:声明为受保护成员,只能访问包含类或从包含类派生的类。受保护成员对于外界是隐藏的。
?internal:声明为内部成员,只能访问当前程序集。
?protected internal:声明为受保护的内部成员,只能访问当前程序集或从包含类派生的类。
?private:声明为私有成员,只有该类中的成员可以访问。如果在声明中没有设置成员的访问修饰符,成员会被默认为private。
二、示例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test
{
class Program
{
public class classTest // 定义一个classTest类
{
public int ID; // 公有成员ID
protected int age; // 保护成员age
private string name; // 私有成员name
public static int count; // 静态成员count
public classTest(string name, int age) // 公有成员,构造函数
{
this.name = name; // 正确,允许访问自身成员
this.age = age; // 正确,允许访问自身成员
count++; // 正确,允许访问自身成员
}
public void Show() // 公有方法成员
{
// 正确,允许访问自身成员
Console.WriteLine("Name:{0}\t Age:{1}", name, age);
}
}
static void Main(string[] args)
{
// C#中类的成员-www.baike369.com
// 创建一个classTest类的对象classTest1
classTest classTest1 = new classTest("BaiXue", 18);
classTest1.ID = 001; // 正确,允许访问classTest1的公有成员
//classTest1.age = 30; // 错误,不允许访问classTest1的保护成员
//classTest1.name = "LiPing"; // 错误,不允许访问classTest1的私有成员
classTest1.Show(); // 正确,允许访问classTest1公有函数成员
// 正确,允许通过类名来访问静态成员
Console.WriteLine("count:{0}", classTest.count);
Console.ReadLine();
}
}
}
运行结果:
Name:BaiXue Age:18
count:1