C#学习笔记_06_方法&函数
06_方法&函数
- 方法的定义
- 方法就是一个功能的集合,可以把程序中某段具有特殊功能的代码提取出来;
- 声明方法
- [ 访问权限修饰符 ] [ 其他的修饰符 ] 返回值类型 方法名 ( [形参列表] ) { 方法体 }
- [ 方括号内可有可无 ]
- 注意:
- 1、方法与方法是平级的,不允许出现方法嵌套方法;
- 2、方法名是一个标识符,遵循大驼峰命名法;
- 使用方法

- 一个方法体中的代码如果需要被执行,则需要调用方法;
- 一个方法写好之后可以被多次调用;
- 参数
- 其实就是一个变量
- 在调用方法的时候,需要给方法中所有的“必需形式参数”赋值
- 必需形式参数:没有初始值的形式参数
- “可选形参”要在“必须形参”之后

- 变量
- 局部变量:书写在方法或者一个代码段内的变量;
- 全局变量:书写在类中与方法平级的变量;
- 变量的作用域:一个变量能够被访问的范围;
- 一般来说,局部变量的作用域为,从声明开始,到声明变量所在的大括号结束;
- 在for循环中循环起点定义的变量:仅在for循环中有效
- 返回值

- 就是一个方法执行的结果
- void:是一个空,表示没有类型,没有结果
- 如果一个方法不需要执行的结果,这个方法的返回值类型可以设计成void
- return
- 将后面的值作为方法的执行结果返回
- 结束方法,return后的代码将不执行
- 注意:
- 如果一个方法的返回值类型不是void,那么在这个方法结束执行之前必须要有具体的返回的值;
- 如果一个方法中有分支,那么必须保证每一个分支上都有返回值;
- 返回值的类型和具体的返回值的类型要匹配;
- 在返回值为void的方法中是可以使用return的;
- 方法的重载Overload
- 在一个类中,如果有多个方法满足以下几个条件,那么这些方法彼此之间是重载关系
- 1、方法名相同
- 2、参数不同:数量不同,类型不同

- 重载跟返回值没有关系

- 通过“实参”来区分调用不同的方法
- 作用:简化代码
- 在一个类中,如果有多个方法满足以下几个条件,那么这些方法彼此之间是重载关系
- 方法的递归
- 递归:方法循环调用

- 使用递归的时候要注意:一定要留有出栈的时机

- 递归:方法循环调用
C#学习笔记_06_方法&函数的更多相关文章
- IOS学习笔记06---C语言函数
IOS学习笔记06---C语言函数 -------------------------------------------- qq交流群:创梦技术交流群:251572072 ...
- Typescript 学习笔记三:函数
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- ES6学习笔记<三> 生成器函数与yield
为什么要把这个内容拿出来单独做一篇学习笔记? 生成器函数比较重要,相对不是很容易理解,单独做一篇笔记详细聊一聊生成器函数. 标题为什么是生成器函数与yield? 生成器函数类似其他服务器端语音中的接口 ...
- OpenCV 学习笔记03 findContours函数
opencv-python 4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...
- Go语言学习笔记七: 函数
Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...
- Java学习笔记之---方法和数组
Java学习笔记之---方法与数组 (一)方法 (1)什么是方法? 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 (2)方法的优点 使程序变得更简短而 ...
- Python学习笔记之常用函数及说明
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多 ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- canvas学习笔记、小函数整理
http://bbs.csdn.net/topics/391493648 canvas实例分享 2016-3-16 http://bbs.csdn.net/topics/390582151 html5 ...
随机推荐
- ZendFramework2学习笔记 表单过滤、表单验证
ZF2有非常多内建的Filter和Validator组件,能够方便地对表单数据进行处理. Filter的作用是过滤表单数据.比如,去除一些空格,替换一些敏感词等. Validator的作用是检验表单数 ...
- android app记录执行日志 捕获奔溃异常 ,存储日志到文件
app在执行过程中.为了后期的维护升级,记录日志是一个很好的方法. 为了读取到app执行时的日志,一般的作法是单独开一个线程,在app执行的启动线程.然后app退出时停掉线程. 然而我们更好的方法是开 ...
- oc40--类的启动过程
// // main.m // 类的启动过程 #import <Foundation/Foundation.h> #import "Person.h" #import ...
- alsa 用户空间编程【转】
本文转载自:http://blog.csdn.net/sjin_1314/article/details/12872581 /**alsa play test *ALSA用户空间编译,ALSA驱动的声 ...
- Detach a Database
https://msdn.microsoft.com/en-us/library/ms191491.aspx 方法一:Using SQL Server Management Studio To det ...
- 前缀和&&离散化
现在正在上课,但我还是要同步更新博文...\滑稽 先讲一个离散化,就是把几个离的特别远的数在不影响结果的情况下,变成相近的数.倒是没什么影响,但应用在数组下标的话可以节约空间.(貌似和hash有点像) ...
- 线性回归(最小二乘法、批量梯度下降法、随机梯度下降法、局部加权线性回归) C++
We turn next to the task of finding a weight vector w which minimizes the chosen function E(w). Beca ...
- myeclipse视图布局恢复
使用Windows 菜单下的 Reset Perspective
- C/C++中的位运算符
--------开始-------- 我自己都记不住这是第几次把这几个位运算符搞混了,刚好在刚用过来把这几个位运算符记下来,俗话说的好好记性不如个烂笔头. 运算符: 与 或 ...
- POJ 3481 set水过
题意:1表示插入客户K,他的优先级是P(相当于大小),2表示输出当前优先级最高的客户(即找出最大值),并且删除.3同理输出最低级的. 这题可以用splay treap AVL SBT -- (可是我并 ...