方法(函数)

能够独立完成某项功能的模块
    函数的四要素:函数名、输入、输出、函数体
    函数定义、函数的调用

函数就是将一堆代码进行重用的一种机制,函数就是一段代码,这段代码可能有输入的值(参数),可能会返回值。一个函数就像一个专门做这件事的人,我们调用它来做一些事,它可能需要我们提供一些数据给它,它执行完成后可能会有一些执行结果给我们。要求的数据叫参数,返回的执行结果就是返回值。
    例如:string a=Console.ReadLine(); 就是一个有返回结果的函数。

封装

方法(函数)的语法:
    [public] static 返回值类型 方法名([参数列表])
    {
       
    }
    public:访问修饰符,公开的,公共的,哪都可以访问。
    static:静态的
    返回值类型:如果不需要些返回值,写void;或刚开始不知道写什么返回值就先写void···
    方法名:Pascal 每个单词的首写字母都大写。其余字母小写 ,也可以叫参数名,形式上的参数,这个参数是形参;当调用函数时写的是实际参数,实参
    参数列表:完成这个方法所必须提供给这个方法的条件。如果没有参数,小括号也不能省略。

方法写好后,如果想要被执行,必须要在Main()函数中调用
    方法的调用语法:
    类名.方法名([参数]);例如:Program.GetMax();

retrun
        1、在方法中返回要返回的值。
        2、立即结束本次方法。

在Main()函数中,调用Test()函数,我们管Main()称之为调用者,管Test()称之为被调用者。 如果被调用者想要得到调用者的值:
    1.传递参数
    2.用户静态字段来模拟全局变量
    如果调用者想要得到被调用者的值:
    1、返回值
       
    2、不管是实参还是形参,都是在内存中开辟了空间的。

3、方法的功能一定要单一。
    GetMax(int n1,int n2)
    方法中最忌讳的就是出现提示用户输入的字眼。

4、方法的高级参数:out、ref、params
        1)、out参数。
        如果你在一个方法中,返回多个相同类型的值的时候,可以考虑返回一个数组。
        但是,如果返回多个不同类型的值的时候,返回数组就不行了,那么这个时候,
        我们可以考虑使用out参数。
        out参数就侧重于在一个方法中可以返回多个不同类型的值。

2)、ref参数
        传地址,能够将一个变量带入一个方法中进行改变,改变完成后,再将改变后的值带出方法。
        ref参数要求在方法外必须为其赋值,而方法内可以不赋值。

3)、params可变参数
        将实参列表中跟可变参数数组类型一致的元素都当做数组的元素去处理。
        params可变参数必须是形参列表中的最后一个元素。

5、方法的重载
    概念:方法的重载指的就是方法的名称相同给,但是参数不同。
    参数不同,分为两种情况
    1)、如果参数的个数相同,那么参数的类型就不能相同。
    2)、如果参数的类型相同,那么参数的个数就不能相同。
    ***方法的重载跟返回值没有关系。

6、方法的递归
    方法自己调用自己。
    找出一个文件夹中所有的文件。

c# 编程--方法(函数)的更多相关文章

  1. Py编程方法,尾递归优化,map函数,filter函数,reduce函数

    函数式编程 1.面向过程 把大的问题分解成流程,按照流程来编写过程 2.面向函数 面向函数编程=编程语言定义的函数+数学意义上的函数先弄出数学意义上的方程式,再用编程方法编写这个数学方程式注意面向函数 ...

  2. 函数式编程 —— 将 JS 方法函数化

    前言 JS 调用方法的风格为 obj.method(...),例如 str.indexOf(...),arr.slice(...).但有时出于某些目的,我们不希望这种风格.例如 Node.js 的源码 ...

  3. paip.函数式编程方法概述以及总结

    paip.函数式编程方法概述以及总结 1     函数式编程:函数式风格..很多命令式语言里支持函数式编程风格 1.1      起源 (图灵机,Lisp机器, 神经网络计算机) 1.2      函 ...

  4. 你所必须掌握的三种异步编程方法callbacks,listeners,promise

    目录: 前言 Callbacks Listeners Promise 前言 coder都知道,javascript语言运行环境是单线程的,这意味着任何两行代码都不能同时运行.多任务同时进行时,实质上形 ...

  5. <经验杂谈>C#中一种最简单、最基本的反射(Reflection):通过反射获取方法函数

    说起反射之前和很多用C#/.net的同仁们一样,相比于一般应用层对数据的增删改查总有点觉得深奥到难以理解.其实程序这东西,用过.实践过就很简单,我一直这么认为. 先说下概念:反射 Reflection ...

  6. 转: ES6异步编程: co函数库的含义与用法

    转: ES6异步编程: co函数库的含义与用法 co 函数库是著名程序员 TJ Holowaychuk 于2013年6月发布的一个小工具,用于 Generator 函数的自动执行. 比如,有一个 Ge ...

  7. 转: ES6异步编程:Thunk函数的含义与用法

    转: ES6异步编程:Thunk函数的含义与用法 参数的求值策略 Thunk函数早在上个世纪60年代就诞生了. 那时,编程语言刚刚起步,计算机学家还在研究,编译器怎么写比较好.一个争论的焦点是&quo ...

  8. 转: ES6异步编程:Generator 函数的含义与用法

    转: ES6异步编程:Generator 函数的含义与用法 异步编程对 JavaScript 语言太重要.JavaScript 只有一根线程,如果没有异步编程,根本没法用,非卡死不可. 以前,异步编程 ...

  9. iOS利用block实现链式编程方法(Objective-C链式编程)

    objc利用block实现链式编程方法 因为不好读.block和其他语言的匿名函数一样,很多程序员刚开始很难主动去用他. 本文描述block作为属性的实际使用,看懂block,并讲解如何利用block ...

  10. scala(一)方法&函数

    写在前面 众所周知,scala一向宣称自己是面向函数的编程,(java表示不服,我是面向bean的编程!)那什么是函数? 在接触java的时候,有时候用函数来称呼某个method(实在找不出词了),有 ...

随机推荐

  1. [Luogu2365]任务安排(斜率优化)

    [Luogu2365]任务安排 题目描述 N个任务排成一个序列在一台机器上等待完成(顺序不得改变),这N个任务被分成若干批,每批包含相邻的若干任务.从时刻0开始,这些任务被分批加工,第i个任务单独完成 ...

  2. git提交代码冲突解决

    1.git stash save "说明信息" 2.git stash lish 3.git pull 4.git stash pop stash@{编号}

  3. zuul 详解

    zuul的简单使用与分析: https://www.jb51.net/article/106716.htm https://www.jianshu.com/p/ff863d532767 zuul自定义 ...

  4. java类的加载与初始化

    https://blog.csdn.net/u013349237/article/details/71076617 1在命令行启动虚拟机jvm进行加载, 2用class.forname()方法进行动态 ...

  5. ThreadPoolExecuotor源码参考

    Executor --> ExecutorService --> AbstractExecutorService --> ThreadPoolExecuotor Executor接口 ...

  6. 【归纳】Layui table.render里的json后台传入

    在使用Layui的table元素时,传入的json的数据格式是有其自身定义的,需要另外添加一些字符,以正确传入. 为了传入符合前端格式的数据: table.render({ elem: '#test' ...

  7. CenterOS 7安装Nginx

    1.wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm下载对 ...

  8. webdriver原理

    WebDriver 安装C/S构架设计的: 代码(客户端)--->驱动(解析代码)----->浏览器(服务端) 代码通过http请求发给浏览器驱动,驱动解析代码把他们发给浏览器,浏览器执行 ...

  9. nodejs部署配置pm2

    高大上先上部署node方式: 直接通过node app来启动,如果报错了可能直接停在整个运行, supervisor感觉只是拿来用作开发环境的. 目前似乎最常见的线上部署nodejs项目的有forev ...

  10. webpack对icon-font图片的处理

    一.对图片的处理 安装url-loader 然后再loaderli配置这样会把图片打包成base64格式 { test: /\.(gif|png|jpg)\??.*$/, loader: 'url-l ...