C#⼦类⽗类⽅法同名,三种处理⽅式
1.重载:参数数量或者参数类型不同(overloading );
2.重写:override关键字重写⽗类⽅法,⽗类的⽅法是virtual 或 abstract修饰的,
1using System;
2class A
3 {
4//虚⽅法
5virtual public void sayHello(){
6 Console.WriteLine("A sayHello");
writeline方法属于类7 }
8 }
9class Test:A
10 {
11override public void sayHello(){
12base.sayHello();//访问⽗类的成员,使⽤关键词base
13 Console.WriteLine("Test sayHello");
14 }
15static void Main( string [] args )
16 {
17 Test t = new Test();
18 t.sayHello();
19 Console.ReadLine();
20 }
21 }
override 虚⽅法
1using System;
2abstract class A //含有抽象⽅法的类,抽象类
3 {
4//抽象⽅法
5abstract public void sayHello();
6 }
7class Test:A
8 {
9override public void sayHello(){
10 Console.WriteLine("Test sayHello");
11 }
12static void Main( string [] args )
13 {
14 Test t = new Test();
15 t.sayHello();
16 Console.ReadLine();
17 }
18 }
override 抽象⽅法
3.隐藏⽗类⽅法:使⽤关键字new直接覆盖⽗类⽅法
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论