目录
类的声明
访问修饰符
基类
类的成员
类的实例化
构造函数
对象是面向对象语言的核心,数据抽象和对象封装是面向对象技术的基本要求,而实现这一切的主要手段和工具就是类。
[访问修饰符] class 类名 [:基类]
{
...... //成员,类主体
}
修饰符 | 作用说明 |
---|---|
public | 表示不限制对类的访问。创建类使默认为public |
private | 表示该类只能被这个类的成员访问 |
protected | 表示该类只能被这个类的成员访问或派生类成员访问 |
internal | 表示该类能够由程序集中的所有文件使用,而不能由程序集之外的对象使用 |
abstract | 表示这是一个抽象类,该类含有抽象成员,因此不能被实例化,只能用作基类 |
sealed | 表示这是一个密封类,不能从这个类在派生出其他类。 |
继承产生的类称为派生类或子类,而被继承的类则称为基类、超类或父类。
当多于一项是,用英文逗号分隔。如果没有显示的指定直接基类(可省略),那么它的基类隐含为object。
类成员由两部分组成,一个是类体中以类成员形式引入的类成员,另一个则是直接从它的基类继承而来的成员。
类成员包括:常数、字段、方法、属性、事件、索引器,构造函数,析构函数等(接下来会展开去讲)
类的实例化,用关键字new
类 实例名 = new 类();
类的成员的访问:
实例名.属性;
实例名.方法名();
当定义了一个类之后,就可以通过new运算符将其实例化,产生一个对象。为了能规范、安全的使用这个对象,C#提供了实现对象的初始化方法,这就是构造函数。
构造方法用来创建对象,并且可以在构造函数中对对象进行初始化。
只有创建类的实例或者引用类的任何静态成员时,才能激活静态构造函数。
如果一个类没有声明构造函数,则系统会自动提供一个默认的无参的构造参数
例如:
public class Person
{
// 需要六个参数的构造函数
public Person(string name,char gender,int age,int chinese,int math,int english)
{
this._name = name;
this._age = age;
this._gender = gender;
this._chinese = chinese;
this._math = math;
this._english = english;
}
// 需要两个参数的构造函数
public Person(string name,char gender)
{
this._name = name;
this._gender = gender;
}
}
static void Main(string[] args)
{
//调用构造函数 构造函数的重载
Person per = new Person("张三", '男',25,90,90,90);
Console.WriteLine("==================================");
Person xiaolan = new Person("小兰",'女');
Console.ReadKey();
}