zoukankan      html  css  js  c++  java
  • 方法重载和方法重写

    一、C#语法规则:

    方法重载:同一个类中,方法名相同,参数(类型或数量)不同,方法体不同;

    方法重写:不同的类中,方法名相同,参数(类型和数量)相同,方法体不同;

    关键字: vatiral(标注需要被重写的方法) 、override(标注用于重写的方法)

    二、实践

    1、方法重写

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    
    
    namespace _02Test
    {
    
        class Program
        {
    
            static void Main(string[] args)
            {
    
                Teacher T1 = new Teacher();
                T1.Address();
    
                Myteacher M1 = new Myteacher();
                M1.Address();
    
                Console.ReadKey();
            }
        }
    
        public class Teacher
        {
    
            public virtual void Address()
            {
                Console.WriteLine("这是基类的虚方法!");
            }
        }
    
        public class Myteacher : Teacher //注意具有父子关系的类才能重写
        {
    
            public override void Address()
            {
                Console.WriteLine("这里重写基类的虚方法!");
            }
        }
    }
    

    方法的重载

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    
    
    namespace _02Test
    {
    
        class Program
        {
    
            static void Main(string[] args)
            {
    
                Test T1 = new Test();
             
                Console.WriteLine(T1.Add(2));
                Console.WriteLine(T1.Add(1, 2));
                Console.WriteLine(T1.Add("3"));
                Console.WriteLine(T1.Add("3","5"));
                //  T1.Add(1,);//此时VS会自动提示有几个重载,选择一个你需要的。重载的目的就是适应多样的需要。
    
                Console.ReadKey();
            }
        }
    
        public class Test
        {
    
            public int Add(int i)
            {
                return i;
            }
    
            public int Add(int i,int j)
            {
                return i + j;
            }
    
            public string Add(string i)
            {
                return i ;
            }
    
            public string Add(string i,string j) 
            {
                return i + j; //此处加号起连接符作用
            }
    
        }
    
     
    }
  • 相关阅读:
    获取文字宽高
    jni中的参数含义
    jni开发中的常见错误
    指针只需要记住一点
    Eclipse web项目引用其它项目时的部署问题
    关于JAVA日志
    去掉Mybatis Generator生成的一堆 example
    怎样给Eclipse添加一个Xml模板
    Junit很少出现的一个问题 No tests found matching ...
    出现异常:Unsupported major.minor version
  • 原文地址:https://www.cnblogs.com/hao-1234-1234/p/6104872.html
Copyright © 2011-2022 走看看