概述
一、类的定义
类的访问修饰符 修饰符 class(关键字) 类名
{
类的成员
}
类的访问修饰符:用于设定对类的访问限制,包括public、internal(默认)或者不写,用internal或者不写时代表只能在当前项目中访问类;public则代表可以在任何项目中访问类。
修饰符:修饰符是对类本身特点的描述,包括abstract,sealed和static. abstract是抽象的意思,使用它修饰符的类不能被实例化;sealed修饰的类是密封类,不能被继承;static修饰的类是静态类,不能被实例化。
类名:类名用于描述类的功能,因此在定义类名时最好是具有实际意义,在同一个命名空间下类名必须是唯一的
类的成员:在类中能定义的元素,主要包括字段、属性、方法。
二、C#访问修饰符
类的成员的访问修饰符有4个,具体用法如下。
public:
成员可以被任何代码访问
private
成员仅能被同一个类中的代码访问,如果在类成员前未使用任何访问修饰符,则默然为prvate。
internal
成员仅能被同一个项目中的代码访问
protected
成员只能由类或派生类中的代码访问,派生类是在继承中涉及的。
成员的修饰符
在修饰字段时通常用量修饰符,即readonly(只读)、static(静态的)和const(常量),三者不能修饰同一个成员。
部分类
访问修饰符 修饰符 partial class类名
{.........}
partial即为定义部分的关键字。部分类主要用于当一个类中的内容较多时将类的内容拆分到不同的定义中,并且部分的名称必须相同。
C#中的常用类
1)Console类
Console类中包含控制台输入和输出的常用方法:
Write向控制台输出内容后不换行
WriteLine向控制台输出内容后换行
Read从控制台读取一个字符
ReadLine从控制台上读取一行字符
2)Math类
Math类主要用于一些与数学相关的计算,并提供了很多静态方法方便访问
静态类 static
静态类可以修饰:类 、字段 、方法
staic 修饰类:
被static修饰的类叫静态类 特点:被修饰的类只有静态成员(静态的方法,属性,字段)
未被static修饰的类叫非静态类 特点:非静态类中既可以包含非静态成员,也可以包括静态成员。
静态成员和非静态成员
成员被statci修饰被称为静态成员
成员未被static修饰 被称为非静态成员
静态成员: 它属于当前类,而不是属于某一个对象,访问时通过类名去访问。
非静态成员:它属于某一个对象。只有对象被实例化之后它才存在,访问是通过对象进行访问。
静态的使用场景:
一般工具类,或者提供某种共通功能,不依赖对象
拆箱和装箱
装箱:将值类型转换为引用类型的操作
拆箱:相应地将引用类型转换成值类型。
利用装箱和拆箱功能,可通过允许值类型的任何值与Object类型的值相互转换,将值类型与引用类型链接起来。
一维数组
定义数组: 数据类型【】 数组名:
初始化数组中的元素:
数据类型【】 数组名=new 数据类型【长度】;
数据类型【】 数组名={值1,值2.....}
数据类型【】 数组名=new 数据类型【长度】{值1,值2,...}
多维数组
定义语法:
数据类型[, ,.....]数组名;
数据类型【,,...】 数组名=new 数据类型【,,...】{{, , ...},{, , ...}};
从上面定义的语法刻印看出,它与一维数组的定义非常类型,每多一个维度则在定义时的【】中增加一个‘’,’‘。
存取数组中的值也是将下标用“ , ”隔开
Foreach遍历:(foreach语句仅能用于数组、字符串或集合类数据类型)
foreach循环用于列举出集合中所有的元素,foreach语句中的表达式由关键字in隔开的两个项组成
in右边的项是集合名,in左边的项是变量名,用来存放该集合中的每个元素。
foreach(数据类型 变量名 in 数组名)
{
//语句块;
}
int[ ] intArr1 = { 1, 2, 3, 4 };
for遍历
item可读可写的
Console.WriteLine("for遍历:");
for(int i=0;i<intArr1.Length;i++)
{
Console.WriteLine(intArr1[i]);
}
foreach遍历
item只读的
Console.WriteLine("foreach遍历:");
//i代表数组中每次遍历的元素 intArr1数组
foreach(int item in intArr1)
{
Console.WriteLine(item);
}
字符串分割
Split方法用于按照指定的字符串来拆分原有字符串,并返回拆分后得到的字符串数组
想将下列其分割成单独的字符串,此时就可以使用string类的split方法。
结构体类型
结构体类型是一种自定义值类型,与类比较相似
定义语法:
访问修饰符 struct 结构体名称
{
//结构体成员
}
访问修饰符:
通常使用public,如果不写,代表使用internal来修饰,如果结构体中的内容要被其他类中的成员访问,需要将其访问修饰符设置为public
结构体名称:
命名规则通常和类的命名规则相同,即每个单词的首字母大写。
结构体成员:
包括字段、属性、方法以及事件等。但无法进行初始化操作。
结构体与类的区别:
结构体允许不使用new对其实例化、没有默认的构造方法、不能继承类、不允许使用abstract、protected以及sealed修饰,而类与结构体恰恰相反
类的构造顺序:
先调用父类的构造器,再调用自己的构造器
继承的概念
继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易,同时也有利于重用代码和节省开发时间。
当创建一个类时,我们不需要完全重新编写新的数据成员和成员函数,只需要设计一个新类,基础了已有的类的成员即可。
这个已有的类被称为基类,也叫父类,这个新的类被称为派生类,也叫子类
继承的特点:
派生类是对基类的扩展,派生类可添加新的成员,但不能移除已经继承的成员的定义
继承是可以传递的。如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中声明的成员。
派生类如果定义了与继承而来的成员同名的新成员,那么就可以覆盖已经继承的成员,但这并不是删除了这些成员没知识不能再访问这些成员。
基类中public成员可以在派生类中访问 在外部项目访问
基类中internal成员 可以在派生类中访问 只能在本项目被访问
基类中的protected成员 受保护的只可以派生类中访问 不可以在类外被访问
基类中private成员 只能在当前类中访问。
关键字:
base代表父类的成员部分
使用vritual关键字修饰的方法叫做虚方法。
作用:1.虚方法可以是有实现
2.派生类去重写,实现自己的定义
如何在派生类重写虚方法:
1.方法定义要与父类保持一致(访问修饰符、返回值、函数名、函数参数);
2.使用override修饰
abstract抽象的
abstract修饰的类叫抽象类,不能被实例化,只能继承。
abstract修饰的方法叫抽象方法,抽象方法没有定义,需要被派生类重写。
虚方法和抽象方法
最后
以上就是迅速柜子为你收集整理的C#资料整理的全部内容,希望文章能够帮你解决C#资料整理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复