C#封装
·被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中";在面向对象程序设计方法论中,封装是为了防止对实现细节的访问
·抽象和封装是面向对象程序设计的相关特性;抽象允许相关信息可视化,封装则使程序员实现所需级别的抽象
·封装使用访问修饰符来实现;一个访问修饰符;定义了一个类成员的范围和可见性;C#支持的访问修饰符如下所示:
1、Public
2、Private
3、Protected
4、Internal
5、Protected internal
(1)Public 访问修饰符
·允许一个类将其成员变量和成员函数暴露给其他的函数和对象;任何公有成员可以被外部的类访问
(2)Private 访问修饰符
·允许一个类将其成员变量和成员函数对其他的函数和对象进行隐藏;只有同一个类中的函数可以访问它的私有成员;即使是类的实例也不能访问它的私有成员
(1)Protected 访问修饰符
·允许子类访问它的基类的成员变量和成员函数;这样有助于实现继承
(2)Internal 访问说明符
·允许一个类将其成员变量和成员函数暴露给当前程序中的其他函数和对象;换句话说,带有 internal 访问修饰符的任何成员可以被定义在该成员所定义的应用程序内的任何类或方法访问
(3)Protected Internal 访问修饰符
·允许一个类将其成员变量和成员函数对同一应用程序内的子类以外的其他的类对象和函数进行隐藏;这也被用于实现继承。
C#方法
·一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块;每一个C#程序至少有一个带有Main方法的类
·当要使用一个方法,需要:定义方法、调用方法
(1)定义方法:当定义一个方法时,从根本上说是在声明它的结构元素;
在C#中,定义方法的语句如:
方法的各个元素:
(2)调用方法:可以使用方法名调用方法
(3)递归方法调用:一个方法可以自我调用;这就是所谓的递归
(4)参数传递:当调用带有参数的方法时,需要向方法传递参数;
在C#中的三种方法传递参数方式:
(5)按值传递参数:是参数传递的默认方式;在这种方式下,当调用一个方法时,会为每个参数创建一个新的存储位置;
实际参数的值会复制给形参,实参和形参使用的是两个不同内存中的值;所以,当形参的值发生改变时,不会影响实参的值,从而保证了实参数据的安全
(6)按引用传递参数:引用参数是一个对变量的内存位置的引用。当按引用传递参数时,与值参数不同的是,它不会为这些参数创建一个新的存储位置。引用参数表示与提供给方法的实际参数具有相同的内存位置
(7)按输出传递参数:return 语句可用于只从函数中返回一个值。但是,可以使用输出参数来从函数中返回两个值。输出参数会把方法输出的数据赋给自己,其他方面与引用参数相似