C# 子类父类方法同名,三种处理方式?

2021-06-15 23:06

阅读:485

标签:readline   类方法   OLE   code   err   console   hide   test   覆盖   

1.重载:参数数量或者参数类型不同;
2.重写:override 关键字重写父类方法,父类的方法是virtual 或 abstract修饰的,

技术图片技术图片
 1 using System;
 2 class A 
 3 {
 4     //虚方法
 5     virtual public void sayHello(){
 6         Console.WriteLine("A sayHello");
 7     }
 8 }
 9 class Test:A
10 {
11     override public void sayHello(){
12         base.sayHello();//访问父类的成员,使用关键词base
13         Console.WriteLine("Test sayHello");
14     }
15     static void Main( string [] args )
16     {
17         Test t = new Test();
18         t.sayHello();
19         Console.ReadLine();
20     }
21 }
overrde 虚方法
技术图片技术图片
 1 using System;
 2 abstract class A //含有抽象方法的类,抽象类
 3 {
 4     //抽象方法
 5     abstract public void sayHello();
 6 }
 7 class Test:A
 8 {
 9     override public void sayHello(){
10         Console.WriteLine("Test sayHello");
11     }
12     static void Main( string [] args )
13     {
14         Test t = new Test();
15         t.sayHello();
16         Console.ReadLine();
17     }
18 }
override 抽象方法

3.隐藏父类方法:使用关键字new直接覆盖父类方法

C# 子类父类方法同名,三种处理方式?

标签:readline   类方法   OLE   code   err   console   hide   test   覆盖   

原文地址:https://www.cnblogs.com/GoldenEllipsis/p/10355594.html


评论


亲,登录后才可以留言!