首页 > 编程语言 >(十三)C#编程基础复习——函数/方法详解

(十三)C#编程基础复习——函数/方法详解

时间:2023-11-13 11:00:14浏览次数:38  
标签:复习 C# 函数 详解 参数 Output Program 返回值 string

C#中的函数(也可以称为方法)是一段具有签名(由函数名、参数类型和参数修饰符组成的函数信息)的代码块,可以用来实现特定的功能。一般情况下一个函数由以下几个部分组成:

  1. 访问权限修饰符:用于指定函数对一个类的可见性;(

    public  公开的,公共的,同一程序集的其他任何代码或引用该程序集的其他程序集都可以访问该类型或成员。

    private  私有的,同一类和结构的代码可以访问该类型和成员。

    protected  受保护的,表示可以在当前类的内部以及该类的子类(继承性)中访问

    internal  同一程序集中的任何代码都可以访问该类型或成员,但其他程序集不可以访问。

  2. 返回值类型:用于指定函数返回值的数据类型;
  3. 函数名称:用于进行函数调用的唯一名称;
  4. 参数列表:在调用函数时需要传递给函数的参数,参数列表是可选的,可以为空;
  5. 函数主体:包含了实现函数功能的若干代码;

一、函数声明

Access_Specifier Return_Type FunctionName(Parameter List)
{
   Function_Body
   Return_Statement
}

其中,Access_Specifier为访问权限修饰符;Return_Type为返回值类型;FunctionName为函数名称;Parameter List为参数列表;Function_Body为函数主体;Return_Statement为返回语句,用来返回数据。另外需要注意的是,访问权限修饰符、参数列表和返回语句时可选的,可以省略。

二、函数调用

想要调用我们定义好的函数,首先需要将函数所在的类实例化为对象,然后通过对象.函数名()的形式即可调用指定的函数,这里有几点需要注意:

  1. 若函数在定义时参数列表中定义了若干参数,那么在调用时也应该在函数名后面的括号中填入相应数量的参数,并且与参数列表中的参数类型一一对应。
  2. 若函数在定义时没有定义参数列表,那么在调用函数时也不需要再函数名后面填入参数;
  3. 对于有返回值的函数,在调用函数时可以使用一个变量(可选)来接收函数的返回值,变量的类型要与函数返回值的类型相同。

三、没有参数和返回值的函数

C#中,如果函数不需要返回任何内容,则可以在定义函数时使用void来修饰符返回值类型,示例代码如下:

namespace Day3
{
    internal class Program
    {
        static void Main(string[] args)
        {

            Program obj = new Program();//需要先实例化当前类的对象
            obj.Output();//调用定义好的Output函数
            Console.ReadKey();
        }
        /// <summary>
        /// 定义一个没有返回值的函数
        /// </summary>
        public void Output()
        {
            Console.WriteLine("C#编程");
        }
    }
}

运行结果:

四、有参数但没有返回值的函数

函数可以接收一个或多个数据作为参数,并在函数内部使用或处理传入的参数,示例代码如下:

 

namespace Day3
{
    internal class Program
    {
        static void Main(string[] args)
        {
            string str = "hello world";
            Program obj = new Program();//需要先实例化当前类的对象
            obj.Output(str);//调用定义好的Output函数,并传参
            Console.ReadKey();
        }
        /// <summary>
        /// 定义一个没有返回值的函数,该函数可以接收一个参数
        /// </summary>
        public void Output(string message)
        {
            Console.WriteLine(message);
        }

    }
}

运行结果:

五、有参数且有返回值的函数

一个函数可以具有零个或任意数量的参数,也可以返回指定的数据,在下面的示例中,将创建一个包含一个参数的函数,在函数中将传入的字符串拼接成一个新的字符串,并将新的字符串返回。

namespace Day3
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Program obj = new Program();//实例化当前类的对象;
            string msg = obj.Output("hello world");//调用定义好的output函数,将字符串传递给函数,并使用msg接收函数的返回值;
            Console.WriteLine(msg);
            Console.ReadKey();
        }
        /// <summary>
        /// 定义一个函数,该函数可以接收一个字符串参数,并返回一个字符串
        /// </summary>
        /// <param name="message"></param>
        /// <returns></returns>
        public string Output(string message)
        {
            string str = "欢迎访问" + message;
            return str;
        }
    }
}

运行结果:

六、类中的静态函数

C#中的静态函数指的是,在一个类中使用static修饰的函数,调用静态函数比调用普通函数简单很多,只需要函数名即可:

namespace Day3
{
    internal class Program
    {
        static void Main(string[] args)
        {
            string msg = Output("hello world");//调用类中的静态函数
            Console.WriteLine(msg);
            Console.ReadKey();
        }
        /// <summary>
        /// 定义一个函数,该函数可以接收一个字符串参数,并返回一个字符串
        /// </summary>
        /// <param name="message"></param>
        /// <returns></returns>
        static string Output(string message)//使用static修饰的静态方法
        {
            string str = "欢迎访问" + message;
            return str;
        }
    }
}

运行结果:

标签:复习,C#,函数,详解,参数,Output,Program,返回值,string
From: https://www.cnblogs.com/daihaoliulingyi601/p/17828433.html

相关文章

  • husky——The '.husky/pre-commit' hook was ignored because it's not set as execut
    前言系统:machint:The'.husky/pre-commit'hookwasignoredbecauseit'snotsetasexecutable.hint:Youcandisablethiswarningwith`gitconfigadvice.ignoredHookfalse`.hint:The'.husky/prepare-commit-msg'hookwasignoredbec......
  • Oracle database 清理日志文件
    Oracledatabase清理日志文件(listener.log/alertlog)监听日志清理(listener.log)以oracle用户登录,切换到以下目录[oracle@oracledb/]$cd$ORACLE_BASE/diag/tnslsnr/服务器用户名/listener/trace/停止监听服务进程(tnslsnr)记录日志[oracle@oracledbtrace]$lsnrctlsetlo......
  • 深入理解 LINQ 中的 SelectMany
    在LINQ(LanguageIntegratedQuery)中,SelectMany是一个强大的方法,用于处理集合中的嵌套结构。本文将深入探讨SelectMany的用法,以及在其两种形式中参数的含义。1.SelectMany的单参数形式IEnumerable<TResult>SelectMany<TSource,TResult>(thisIEnumerable<TSource>source......
  • 不会这5个Excel函数,别说你会做数据分析?
    当涉及数据分析时,Excel是一个非常有用的工具,而掌握一些核心函数将大大提高你在数据处理和分析方面的能力。以下是我对五个重要的Excel函数的详细介绍:1.VLOOKUP函数VLOOKUP函数是Excel中最常用的查找函数之一。它允许你在一个范围内搜索特定的数值,并返回该数值所在行的其他......
  • 采购CRM系统,这些费用你知道吗?
    近些年CRM软件市场规模高速发展,技术商数量和用户数都突飞猛进。市面上产品种类丰富,系统的价格也是差距很大,从几百块到几十万不等,尽管很多厂商的价格是公开的但部署CRM之后成本很快超出了预期,实施CRM系统都有哪些费用?我们以SaaS模式为例1.产品基本费用SaaS模式能够很大的节省企......
  • 哈佛商业评论:CRM实施为什么成功率较低?
    《哈佛商业评论》研究表明,三分之一的CRM客户管理系统实施以失败告终。CRM实施为什么成功率较低?研究发现,CRM实施失败的主要原因在于:CRM系统目标不清晰,重点不明确,操作过于复杂,给一线用户带来不好的使用体验。CRM实施失败率如此高并不奇怪,许多CRM系统非常复杂。将数据迁移到一个新......
  • nuclei 快速&可自定义的基于DSL的漏洞扫描工具
    nuclei是基于golang开发的,可以使用基于yaml定义的dsl,支持扫描不少协议(tcp,dns,http,ssl,file,whois,websocket,headless,以及code)同时nuclei也提供了不少模版可以方便快速使用说明nuclei使用简单,主要包含两步,定义yaml文件,运行,同时提供了大量可用的模版是一个很不错的安全工具,很值......
  • macOS上有哪些值得推荐的常用软件
    macOS作为一款流行的操作系统,拥有丰富的第三方软件生态系统,涵盖了各种领域的应用程序。以下将介绍一些在macOS上备受推崇的常用软件,并对它们进行详细的介绍和说明。1.生产力工具a.MicrosoftOfficeMicrosoftOffice提供了Word、Excel、PowerPoint等办公软件,是办公人员......
  • CC1310F128RSMR Sub-1GHz超低功耗无线微控制器芯片
    CC1310F128RSMRQFN-32Sub-1GHz超低功耗无线微控制器CC1310F128RSMR是一款低成本、超低功耗、Sub-1GHz射频器件,它是Simplelink微控制器(MCU)平台的一部分。该平台由Wi-Fi组成、蓝牙低功耗,Sub-1GHz,以太网,Zigbee线程和主机mcu。这些设备都有一个共同的,易于使用的开发环境,具有......
  • C语言感恩程序代码
    以下是一个基于C语言的简单感恩程序代码,通过打印特定的字符画和文字,表达对生活中各种值得感恩的事物的感激之情:#include<stdio.h>intmain(){printf("\n");printf("\n");printf("________________.\n");printf("......