`
java-mans
  • 浏览: 11982028 次
文章分类
社区版块
存档分类
最新评论

C#学习4

 
阅读更多

函数的重载,及同一个类中方法名相同,参数列表不同,参数列表不同包括方法中的参数个数不同或参数的数据类型不同

首先说一种常见的重载,修改参数的个数和数据类型

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace chongzai
{
    class Program
    {
        static void Main(string[] args)
        {
            Program p = new Program();
            p.run();
        }
        void run()
        {
            int arg1 = 10;
            float arg2 = 12.5f;
            int arg3 = 30;
            dowork(arg1, arg2);
            dowork(arg1, arg2, arg3);
            dowork(arg2, arg3);
        }
        void dowork(int intdata, float floatdata, int moreintdata)
        {
            Console.WriteLine("intdata:{0},floatdata:{1},moredata:{2}", intdata, floatdata, moreintdata);
        }
        void dowork(int intdata, float floatdata)
        {
            Console.WriteLine("intdata:{0},floatdata:{1}", intdata, floatdata);
        }
        void dowork(float floatdata, int moreintdata)
        {
            Console.WriteLine("floatdata:{0},moreintdata:{1}", floatdata, moreintdata);
        }
    }
}

也可以通过给参数赋上默认值来进行重载,注意没有默认值的参数写在前面,有默认值的参数写在后面

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace chongzai
{
    class Program
    {
        static void Main(string[] args)
        {
            Program p = new Program();
            p.run();
        }
        void run()
        {
            int arg1 = 10;
            float arg2 = 12.5f;
            int arg3 = 30;
            dowork(arg1);
            dowork(arg1, arg2);
            dowork(arg1, arg2, arg3);
            dowork();
        }
        void dowork(int intdata=0, float floatdata=0.0f, int moreintdata=0)
        {
            Console.WriteLine("intdata:{0},floatdata:{1},moredata:{2}", intdata, floatdata, moreintdata);
        }
     }
}

还也通过指定参数的传值来重载

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace chongzai
{
    class Program
    {
        static void Main(string[] args)
        {
            Program p = new Program();
            p.run();
        }
        void run()
        {
            int arg1 = 10;
            float arg2 = 12.5f;
            int arg3 = 30;
            dowork(arg1);
            dowork(moreintdata:arg3);
            dowork(arg1, arg2);
            dowork(floatdata:arg2,moreintdata:arg3);
            dowork(arg1, arg2, arg3);
            dowork();
        }
        void dowork(int intdata=0, float floatdata=0.0f, int moreintdata=0)
        {
            Console.WriteLine("intdata:{0},floatdata:{1},moredata:{2}", intdata, floatdata, moreintdata);
        }
     }
}



分享到:
评论

相关推荐

    关于C#学习资料

    这份"关于C#学习资料"的压缩包,主要包含了C#学习的基础内容,特别提到了“DAM模块快速入门手册”,这很可能是针对某个特定的软件或框架的学习指南。 首先,C#的基础学习通常从了解其语法结构开始。C#语法在很大...

    c#学习c#学习c#学习c#学习c#学习c#学习c#学习c#学习c#学习c#学习c#学习

    c#学习c#学习c#学习

    Learning hard C# 学习笔记

    总而言之,《Learning Hard C# 学习笔记》是一份全面的C#学习资源,它不仅覆盖了C#的基本语法和高级特性,还包含了实际开发中的应用场景,对于初学者来说是一份不可多得的参考资料。配合源码实践,相信你可以从零...

    C# 学习记录,C#基础语法学习案例37套源码(适合正在学C#的学者)

    C# 学习记录,C#基础语法学习案例37套源码(适合正在学C#的学者) 001第一个HelloWorld程序 002CSharp数据类型与变量 003类型推断 004各种数据类型大小比对及所占字节 005枚举 006结构体 007元组 008字符串 009...

    LearningHard C#学习笔记

    LearningHard C#学习笔记,学习C#的经典入门教材。 非常适合初学者,希望大家一起努力。

    C#学习安卓端

    C#学习是Android客户端目前最全面的免费离线C#学习书籍,从C#入门到C#面向对象编程,提高您对C#的基础理解和全面掌握。主要内容包括: 1、C#变量、数据类型 2、C#面向对象 3、C#封装、继承、多态 4、面向接口编程 5...

    C# 学习心得(最新)

    4. **集合与泛型**:C#提供了多种集合类型,如ArrayList、LinkedList、HashSet等,以及泛型的概念,用于创建类型安全的容器,提升代码的可复用性。 5. **LINQ**:Language Integrated Query,是C#中的一个强大的...

    c#学习资料合集

    【C#学习资料合集】是一个综合性的资源包,包含了多本关于C#编程语言的电子书籍,旨在帮助初学者和进阶者深入理解和掌握C#。这些书籍涵盖了从基础到高级的各个层面,能够为学习C#的同学提供全面的知识支持。 首先,...

    c#学习资料C#完全手册.pdf

    《C#学习资料C#完全手册》是一份详尽的指南,旨在帮助读者全面掌握C#编程语言。从标题和描述来看,这份手册是专为希望深入学习C#的程序员准备的,它不仅包含了C#的基础知识,还深入探讨了语言的高级特性,以及如何在...

    c#学习计划 一起来学习c#入门

    c#学习计划 每个初学者都要问的问题 我们一起来分享

    C#学习资料C#学习资料

    C#学习资料 C#学习资料 C#学习资料 C#学习资料 C#学习资料

    c#学习资料 txt

    根据给定的文件信息,以下是从标题、描述、标签以及部分内容中提炼出的关于C#学习资料的关键知识点: ### C#编程语言介绍 C#(读作“C sharp”)是一种面向对象的、类型安全的编程语言,由Microsoft在.NET框架下...

    C#学习(apk)

    C#学习是Android客户端目前最全面的免费离线C#学习书籍,从C#入门到C#面向对象编程,提高您对C#的基础理解和全面掌握。主要内容包括: 1、C#变量、数据类型 2、C#面向对象 3、C#封装、继承、多态 4、面向接口编程 5...

    C#+X学习网址 C#+X学习网址

    ### 知识点一:C#学习资源 1. **ChinaITLab下载中心**(http://download.chinaitlab.com/) - 这个网站提供了大量的IT技术资料下载,包括C#相关的书籍、教程、代码示例等,是初学者和进阶者获取学习材料的好去处。...

    Visual C#学习笔记光盘

    Visual C#学习笔记光盘 简介:本书由浅入深地讲解Visual C# 2005编程知识,全书内容分为6篇,共27章,第一篇介绍Visual Studio 2005开发环境和C#基础,其中包括Visual C# 2005简介,C#语言基础,面向对象编程...

    自己总结的C#学路线

    有的初学者对于如何开始学习C#感到无从下手,不知看哪些书,或者是看什么视频,没有目的性,这样就会影响学习效率,也会影响学习的热情。最重要的是很多同学学之前问很多和学习无关的问题,比如:C#是不是不如JAVA好...

    C#学习资料.zip

    本资料包“C#学习资料.zip”提供了丰富的资源,旨在帮助初学者构建扎实的C#知识体系,并通过实际案例加深理解。 首先,让我们关注“C#中的Dictionary字典类介绍.pdf”。Dictionary类是C#中一个非常重要的数据结构,...

    微软官方的C#学习文档

    微软官方提供的C#学习文档是学习C#的重要资源,涵盖了从基础知识到高级特性的全面教程。 入门部分首先会介绍C#语言和.NET框架的基本概念,帮助初学者理解C#编程的基础环境。教程部分从C#编程简介开始,通过“Hello ...

Global site tag (gtag.js) - Google Analytics