一.类
1.类的概述
类是一种能储存数据并执行代码的数据结构.它包含:
*数据成员,它存储与类或类的实例相关的数据.数据成员通常模拟该类所表示的现实事物的特征
*函数成员,它执行代码.函数成员通常模拟该类所表示的现实事物的功能和操作.
*类是逻辑相关的数据和函数的封装,通常代表真世界中的或概念上的事物.
2.程序和类
*一个运行中的C#程序是一组相互作用的类型对象,它们中的大部分是类的实例.
说明:运行中的程序是一组相互作用的对象.
3.声明类
*类的声明定义新类的特征和成员.它并不创建类的实例,但 创建了用于创建实例的模板
关键字 类名
class MyEx测llentClass
{
成员声明
}
class Dealer 类声明
{
...
}
4.类成员
*字段和方法是最重要的类成员类型. 字段是数据成员,方法是函数成员.
(1)字段:字段是隶属于类的变量,可以是任何类型
类型 字段名称
type identifier
例如: class MyClass
{
类型 字段名称
int MyField
}
(2)显示和隐式字段初始化
*字段初始化是字段声明的一部分,由一个等于号后面跟着一个求值表达式组成;
*初始化值必须是编译期可决定的
class MyClass
{
int F1 -17;
字段初始值
}
*如果没有初始化语句,字段的值会被编译器设为默认值,默认值由字段的类型决定.每种默认值都是0, bool型是false, 引用类型默认为null.
class MyClass
{
int F1; 初始化为0,数值类型
string F2; 初始化为null,引用类型
int F3=25; 初始化为25;
string F4="fghjk"; 初始化为"fghjk"
}
(3)声明多个字段
*通过逗号分隔名称的方式,在同一条语句中声明多个相同类型的字段.但不能在一个声明中混合不同的类型.
(4)方法
*方法是具有名称的可执行代码块,可以从程序的很多不同地方执行,甚至从其他程序中执行.
*当方法被调用时,它执行自己所含的代码,然后返回到调用它的代码,有些方法返回一个值到它们被调用的位置.
*返回类型:它声明了方法返回值得类型.如果一个方法不返回值.那么返回类型被指定为Void.
*参数类表:它由至少一对空的圆括号组成,如果有参数,它们被列在圆括号中间.
*方法体:它由一对大括号组成,大括号内包含执行代码.
class SinpleClass
{ 返回类型 参数列表
void printNum()
{
Console.WriteLine("1");
}
}
5.创建变量和类的实例
*类是引用类型
*数据的引用保存在一个类类型的变量中.要创建一个类的实例,需要声明一个类类型的变量开始,如果变量没有被初始化,它的值是未定义的
6.为数据分配内存
*声明类类型的变量所分配的内存是用来保存引用的,而不是用来保存类和对象实际数据的.要为实际数据分配内存,需要使用new运用符.
*new运算符为任意指定类型的实例分配并初始化内存.
*如果内存分配给一个引用类型,则对象创建表达式返回一个引用,指向堆中被分配并初始化的对象实例.
声明变量 使用对象创建表达式初始化变量
Dealer thedealer=new Dealer(); 声明并初始化
7.实例成员
*实例成员:类的每个实例都是不同的实体它们有自己的一组数据成员,不同于一类的其它实例.数据成员和类的实例相关,所以称为实例成员
*静态成员:实例成员是默认类型,但也可以声明与类而不是实例相关的成员,所以称为静态成员.
8.访问修饰符是成员声明的可选部分,指明程序部分如何访问成员,访问修饰符放在简单声明形式之前.
字段
访问修饰符 类型 标识符;
方法
访问修饰符 返回类型 方法名()
{
.....
}
私有的(private) 共有的(public) 受保护的(protected) 内部的(intemal) 受保护内部的(protected intemal)
*公有访问和私有访问
类成员被表示为类框中的小标签框
私有成员被表示为完全封闭在它们的类框中
公有成员被表示为部分伸出到它们的类框之外
10.类的外部访问实例成员,必须包括变量名称和成员名称,中间用句点( .)分隔.
DaysTemp myot=new DaysTemp(); 创建类的对象
float fvalue=myot.Average(); 从外部访问