C#中base关键字-调用父类成员

标签: c# string class output system
1389人阅读 评论(1) 收藏 举报
分类:

C#中base关键字在继承中起到非常重要的作用。它与this关键字相比,this关键字代表当前实例。base关键字代表父类,使用base关键字可以调用父类的构造函数、属性和方法。

使用base关键字调用父类构造函数的语法如下:
子类构造函数:base(参数列表)

使用base关键字调用父类方法的语法如下:
base.父类方法();

using System ;
class Teacher//老师类
{
    
public Teacher()//构造函数1
     {
         Console.WriteLine (
"我是一位教师。");
     }
    
public Teacher(string str)//构造函数2
     {
         Console.WriteLine (
"老师,"+str);
     }
    
    
public void OutPut()//自定义方法
     {
         Console.WriteLine (
"输出方法");
     }
    
    
private string name;
    
public string Name//属性
     {
        
get{return this.name;}
        
set{this.name=value;}
     }
    
public void getName()
     {
         Console.WriteLine (
"我的名字是"+name);
     }
}

class Jack:Teacher
{
    
static string hello="你好";
    
public Jack():base(hello)//子类的构造函数继承的为父类第二个构造函数,注意写法
     {
     }
    
public void myOutPut()//自定义函数
     {
        
base.OutPut ();//引用父类的函数
     }
    
public string myName//自定义属性
     {
        
get{return base.Name ;}
        
set{base.Name =""+value;}
     }
}
class Test
{
    
static void Main()
     {
         Jack j
=new Jack ();//输出“老师,你好”
         j.myOutPut ();//输出"输出方法"
         j.myName ="德华";
         j.getName ();
//输出“刘德华”
     }
}

注意:base()调用父类构造函数时,不需要再次指定参数的类型,因为在子类中已经定义了这些参数,在base()中只需指定变量名即可,参数的类型必须和父类中的一致。

查看评论

C#:base与this关键字用法小结

1.base关键字 在博文《C#类继承中构造函数的用法小结》一文中,我们已经学习到:使用base关键字可以帮助子类显示地调用父类的构造函数。对于这点,我们可以使用前文所给的实例代码(有裁剪)来进行说明...
  • tiana0
  • tiana0
  • 2013-09-08 11:19:42
  • 15527

C# :base的用法(冒号后面的base)

我前写过一篇文章叫 C# :this的用法(冒号后面的this) 文字写的多了感觉是没有必要的,能说明白,或者看的人能够悟到就可以了 1.this是标识当前资源对象的,而base是基于父级...
  • w200221626
  • w200221626
  • 2016-09-01 16:52:24
  • 4896

【面向对象】访问this关键字和base关键字使用

一、总体概要 this引用类的当前实例。静态成员方法中不能使用this关键字,this关键字只能在实例构造函数、实例方法或实例访问器中使用。base关键字用于从派生类中访问基类的成员。下面学习一下...
  • kisscatforever
  • kisscatforever
  • 2015-09-05 11:20:05
  • 1345

Base关键字的使用

using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplicat...
  • abcdef406505181
  • abcdef406505181
  • 2009-07-27 08:34:00
  • 350

base关键字

C# base关键字
  • sinat_34201823
  • sinat_34201823
  • 2016-09-05 10:23:32
  • 221

C#在子类中调用父类的有参构造函数

using System; class A { public A() { Console.WriteLine("我是A类的无参构造函数"); } p...
  • cuijianzhongswust
  • cuijianzhongswust
  • 2013-12-27 10:50:44
  • 5252

C#中子类调用父类的实现方法

本文实例讲述了C#中实现子类调用父类的方法,分享给大家供大家参考之用。具体方法如下: 一、通过子类无参构造函数创建子类实例 创建父类Person和子类Student。 ? 1 ...
  • cxcalm
  • cxcalm
  • 2015-10-14 15:39:06
  • 4840

base关键字的用法

base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法。 例如: 2.1关于base调用基类构造函数 pu...
  • ICE_CHB
  • ICE_CHB
  • 2016-09-15 10:52:43
  • 306

base关键字

1.base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法。 例如: 2.关于base调用基类构造函数 pub...
  • yanchun051278
  • yanchun051278
  • 2016-08-30 10:56:38
  • 164

C#回顾学习笔记二十九:new关键字隐藏父类的方法

如果在子类中定义了一个与父类完全相同的方法,则子类的方法就会隐藏父类的方法。编译时也会给出一个警告:要求在同名的派生类方法前加上关键字new。如图所示: 参照警告的建议,尝试给子类方法加上关...
  • privateHiroki
  • privateHiroki
  • 2017-09-22 22:54:16
  • 192
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 257万+
    积分: 3万+
    排名: 134
    博客专栏
    最新评论
    文章存档