【转】C#中base关键字的几种用法:base()
2021-01-29 16:14
标签:his tap strong err rri 函数 成员 lin 面相对象 base其实最大的使用地方在面相对象开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法。 2.1关于base调用基类构造函数 运行结果: Build A Build B 2.2关于base在派生类中调用基类的方法。 运行结果: Hello World 下面是我自己改进了一下上面的例子: 运行结果: Hello Hello World 关于Base: base 关键字用于从派生类中访问基类的成员: 1. 在派生类中调用基类方法。 运行结果: The BaseClass Name is BaseClass Class Name: BaseClass This DerivedClass is DerivedClass 【转】C#中base关键字的几种用法:base() 标签:his tap strong err rri 函数 成员 lin 面相对象 原文地址:https://www.cnblogs.com/sggggr/p/11847731.html public class A
{
public A()
{
Console.WriteLine("Build A");
}
}
public class B : A
{
public B()
: base()
{
Console.WriteLine("Build B");
}
static void Main()
{
B b = new B();
Console.ReadLine();
}
}
public class A
{
public virtual void Hello()
{
Console.WriteLine("Hello");
}
}
public class B : A
{
public override void Hello()
{
base.Hello();//调用基类的方法,显示Hello
Console.WriteLine("World");
}
}
public class A
{
public virtual void Hello()
{
Console.WriteLine("Hello");
}
}
public class B : A
{
public static void Main ()
{
B b = new B();
b.Hello2();
b.Hello();
}
public override void Hello()
{
base.Hello();//调用基类的方法,显示Hello
Console.WriteLine("World");
}
public void Hello2()
{
base.Hello();//调用基类的方法,显示Hello
}
}
调用基类上已被其他方法重写的方法。
指定创建派生类实例时应调用的基类构造函数。
基类访问只能在构造函数、实例方法或实例属性访问器中进行。public class BaseClass
{
protected string _className = "BaseClass";
public virtual void PrintName()
{
Console.WriteLine("Class Name: {0}", _className);
}
}
class DerivedClass : BaseClass
{
public string _className = "DerivedClass";
public override void PrintName()
{
Console.Write("The BaseClass Name is {0}", base._className);
//调用基类方法
base.PrintName();
Console.WriteLine("This DerivedClass is {0}", _className);
}
}
class TestApp
{
public static void Main()
{
DerivedClass dc = new DerivedClass();
dc.PrintName();
}
}
}
下一篇:C# OOP编程
文章标题:【转】C#中base关键字的几种用法:base()
文章链接:http://soscw.com/index.php/essay/48756.html