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...

面试题 相关文章推荐
HashMap和Hashtable的区别
May 18 面试题
JAVA代码查错题
Oct 10 面试题
extern在函数声明中是什么意思
Jan 19 面试题
腾讯技术类校园招聘笔试试题
May 06 面试题
.net面试题
Dec 22 面试题
WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回?
Feb 21 面试题
.net C#面试题
Aug 28 面试题
linux系统都有哪些运行级别
Mar 26 面试题
EJB发布WEB服务一般步骤
Oct 31 面试题
举例说明类变量和实例变量的区别
Jun 30 面试题
Java程序员综合测试题
Apr 25 面试题
如何写出好的Java代码
Apr 25 面试题
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
从Web查询数据库之PHP与MySQL篇
2009/09/25 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
Docker 如何布置PHP开发环境
2016/06/21 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
浅谈PHP错误类型及屏蔽方法
2017/05/27 PHP
PHP常用的类封装小结【4个工具类】
2019/06/28 PHP
用jscript启动sqlserver
2007/06/21 Javascript
jquery $.ajax各个事件执行顺序
2010/10/15 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
详解JavaScript的while循环的使用
2015/06/03 Javascript
你不知道的高性能JAVASCRIPT
2016/01/18 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
2016/05/03 Javascript
BootStrap modal模态弹窗使用小结
2016/10/26 Javascript
TypeScript入门-接口
2017/03/30 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
JavaScript对JSON数据进行排序和搜索
2017/07/24 Javascript
基于Jquery Ajax type的4种类型(详解)
2017/08/02 jQuery
vue 2.0封装model组件的方法
2017/08/03 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
python发送arp欺骗攻击代码分析
2014/01/16 Python
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
Python中最大最小赋值小技巧(分享)
2017/12/23 Python
django 单表操作实例详解
2019/07/30 Python
Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
2020/03/20 Python
Python生成随机验证码代码实例解析
2020/06/09 Python
django教程如何自学
2020/07/31 Python
一款html5 canvas实现的图片玻璃碎片特效
2014/09/11 HTML / CSS
HTML5 video 事件应用示例
2014/09/11 HTML / CSS
意大利时尚精品店:Nugnes 1920
2020/02/10 全球购物
简历中自我评价怎么写
2014/02/12 职场文书
中学教师读书笔记
2015/07/01 职场文书
2017寒假社会实践心得体会范文
2016/01/14 职场文书
Mysql Online DDL的使用详解
2021/05/20 MySQL
浅谈音视频 pts dts基本概念及理解
2022/08/05 数码科技