abstract是什么意思


Posted in 面试题 onFebruary 12, 2012
abstract 修饰符可以用于类、方法、属性、事件和索引指示器(indexer),表示其为抽象成员
abstract 不可以和 static 、virtual 一起使用
声明为 abstract 成员可以不包括实现代码,但只要类中还有未实现的抽象成员(即抽象类),那么它的对象就不能被实例化,通常用于强制继承类必须实现某一成员
示例:
using System;
using System.Collections.Generic;
using System.Text;
namespace Example04
{
#region 基类,抽象类
public abstract class BaseClass
{
//抽象属性,同时具有get和set访问器表示继承类必须将该属性实现为可读写
public abstract String Attribute
{
get;
set;
}
//抽象方法,传入一个字符串参数无返回值
public abstract void Function(String value);
//抽象事件,类型为系统预定义的代理(delegate):EventHandler
public abstract event EventHandler Event;
//抽象索引指示器,只具有get访问器表示继承类必须将该索引指示器实现为只读
public abstract Char this[int Index]
{
get;
}
}
#endregion
#region 继承类
public class DeriveClass : BaseClass
{
private String attribute;
public override String Attribute
{
get
{
return attribute;
}
set
{
attribute = value;
}
}
public override void Function(String value)
{
attribute = value;
if (Event != null)
{
Event(this, new EventArgs());
}
}
public override event EventHandler Event;
public override Char this[int Index]
{
get
{
return attribute[Index];
}
}
}
#endregion
class Program
{
static void OnFunction(object sender, EventArgs e)
{
for (int i = 0; i {
Console.WriteLine(((DeriveClass)sender)[i]);
}
}
static void Main(string[] args)
{
DeriveClass tmpObj = new DeriveClass();
tmpObj.Attribute = “1234567″;
Console.WriteLine(tmpObj.Attribute);
//将静态函数OnFunction与tmpObj对象的Event事件进行关联
tmpObj.Event += new EventHandler(OnFunction);
tmpObj.Function(“7654321″);
Console.ReadLine();
}
}
}
结果:
1234567
7
6
5
4
3
2
1

Tags in this post...

面试题 相关文章推荐
C语言笔试题回忆
Apr 02 面试题
华为C++笔试题
Aug 05 面试题
"火柴棍式"程序员面试题
Mar 16 面试题
介绍一下HTTP、HTTPS和SSL
Dec 16 面试题
C#里面如何倒序排列一个数组的元素?
Jun 21 面试题
Python如何定义一个函数
Sep 01 面试题
一些关于MySql加速和优化的面试题
Jan 30 面试题
垃圾回收的优点和原理
May 16 面试题
介绍下Lucene建立索引的过程
Mar 02 面试题
如何唤起类中的一个方法
Nov 29 面试题
万户网络JAVA程序员岗位招聘笔试试卷
Jan 08 面试题
介绍一下UNIX启动过程
Nov 14 面试题
C#基础面试题
Oct 17 #面试题
C#怎么让一个窗口居中显示?
Oct 20 #面试题
internal修饰符起什么作用
Dec 16 #面试题
C#软件工程师英语面试题
Jun 07 #面试题
C#如何进行LDAP用户校验
Nov 21 #面试题
sealed修饰符是干什么的
Oct 23 #面试题
维德科技C#面试题笔试题
Dec 09 #面试题
You might like
PHP filter_var() 函数 Filter 函数
2012/04/25 PHP
PHP使用反射机制实现查找类和方法的所在位置
2016/04/22 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
2020/04/14 PHP
Discuz! 6.1_jQuery兼容问题
2008/09/23 Javascript
javascript十个最常用的自定义函数(中文版)
2009/09/07 Javascript
jQuery显示和隐藏 常用的状态判断方法
2015/01/29 Javascript
JS实现很酷的EMAIL地址添加功能实例
2015/02/28 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
2015/06/11 Javascript
jQuery实现鼠标滑向当前图片高亮显示并且其它图片变灰的方法
2015/07/27 Javascript
js实现仿网易点击弹出提示同时背景变暗效果
2015/08/13 Javascript
由浅入深讲解Javascript继承机制与simple-inheritance源码分析
2015/12/13 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
JS实现的打字机效果完整实例
2016/06/20 Javascript
JavaScript实现的斑马线表格效果【隔行变色】
2017/09/18 Javascript
vue router下的html5 history在iis服务器上的设置方法
2017/10/18 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
2018/10/20 Javascript
element-ui table span-method(行合并)的实现代码
2018/12/20 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
2020/11/17 Vue.js
Python随机生成数模块random使用实例
2015/04/13 Python
Python元组拆包和具名元组解析实例详解
2018/03/26 Python
python实现QQ空间自动点赞功能
2019/04/09 Python
在Django的View中使用asyncio的方法
2019/07/12 Python
Python有参函数使用代码实例
2020/01/06 Python
pytorch的梯度计算以及backward方法详解
2020/01/10 Python
Pytest mark使用实例及原理解析
2020/02/22 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
python+requests接口压力测试500次,查看响应时间的实例
2020/04/30 Python
Python celery原理及运行流程解析
2020/06/13 Python
Python面向对象实现方法总结
2020/08/12 Python
SmartBuyGlasses台湾:名牌眼镜,名牌太阳眼镜及隐形眼镜
2017/01/04 全球购物
美国隐形眼镜网上商店:Lens.com
2019/09/03 全球购物
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
销售自荐信
2013/10/22 职场文书
2014年材料员工作总结
2014/11/19 职场文书
学术会议领导致辞
2015/07/29 职场文书