转:C#中base关键字的几种用法
来源:互联网 发布:笔电锋淘宝 编辑:程序博客网 时间:2024/05/20 13:05
base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法。
例如:
例如:
2.1关于base调用基类构造函数
public class A
{
}
public class B:A
{
}
创建一个B的实例对象,获得结果是同时打印Build A和Build B.
2.2关于base在派生类中调用基类的方法。
public class A
{
}
public class B : A
{
}
这样如果程序调用B.Hello()获得的效果将会使Hello World.
最后补充下,根据MSDN Library介绍来看这两个关键字都是属于[访问关键字]类型
+++++++++++++++++++++++++++++ 无敌分割线 +++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++ 文章二 +++++++++++++++++++++++++++++
关于base
base 关键字用于从派生类中访问基类的成员:
调用基类上已被其他方法重写的方法。
指定创建派生类实例时应调用的基类构造函数。
基类访问只能在构造函数、实例方法或实例属性访问器中进行。
调用基类上已被其他方法重写的方法。
指定创建派生类实例时应调用的基类构造函数。
基类访问只能在构造函数、实例方法或实例属性访问器中进行。
示例:
1. 在派生类中调用基类方法。
using System;
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.PrintName();
Console.WriteLine("This DerivedClass is {0}", _className);
}
}
class TestApp
{
public static void Main()
{
DerivedClass dc = new DerivedClass();
dc.PrintName();
}
}
public class BaseClass
{
}
class DerivedClass : BaseClass
{
}
class TestApp
{
}
2. 在派生类中调用基类构造函数。
// keywords_base2.cs
using System;
public class BaseClass
{
}
public class DerivedClass : BaseClass
{
}
注意:
从静态方法中使用 base 关键字是错误的。
base 主要用于面向对象开发的对态这方面,在示例2中有体现。
从静态方法中使用 base 关键字是错误的。
base 主要用于面向对象开发的对态这方面,在示例2中有体现。
关于this
this 关键字引用类的当前实例。
以下是 this 的常用用途:
限定被相似的名称隐藏的成员
将对象作为参数传递到其他方法
声明索引器
以下是 this 的常用用途:
限定被相似的名称隐藏的成员
将对象作为参数传递到其他方法
声明索引器
示例:
// this 关键字
// keywords_this.cs
using System;
class Employee
{
}
class Print
{
}
class TestApp
{
}
0 0
- 转:C#中base关键字的几种用法
- 转:C#中base关键字的几种用法
- C#中base关键字的几种用法
- C#中base、this关键字的几种用法
- C#中base关键字的几种用法
- c# base关键字的用法
- C#中base的用法
- C#中base的用法
- C#关键字using的几种用法
- C#关键字using的几种用法
- base关键字的用法
- C#的New关键字的几种用法
- C#的New关键字的几种用法
- C#的New关键字的几种用法
- C#的New关键字的几种用法
- C#的new关键字的几种用法
- C#的new关键字的几种用法
- C#中base两种用法
- Jquery 入门
- SharedPreferences的用法、方法
- 随手记, C回车换行,0x0d 0x0a,WINDOWS下fgetc()一次读入,即\n,LINUX下fgetc()需要分两次读入0x0d, 0x0a
- 黑马程序员——Java基础---面向对象(封装、继承、多态)
- css进阶学习网站
- 转:C#中base关键字的几种用法
- hdu 3681 Prison Break bfs + 二分 + TSP
- 乐讯机器人高级版【版本认证20151015】
- php关于阿里云OSS简易操作类
- C/C++中函数参数传之指针形参
- [20151015]SCZ训练
- 数据本地化存储之NSUserdefaults,plist文件,归档解档,数据库sqlite(FMDB)
- java 内部类如何获取外部类引用
- thinkphp 切换数据库的方法