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

面试题 相关文章推荐
Java里面有没有全局变量?为什么?
Feb 06 面试题
空指针到底是什么
Aug 07 面试题
Oracle里面常用的数据字典有哪些
Feb 14 面试题
北京-环亚运商测试题.net程序员初步测试题
May 28 面试题
DataList 能否分页,请问如何实现?
May 03 面试题
.NET初级开发工程师面试题
Apr 18 面试题
什么是TCP/IP
Jul 27 面试题
网络方面基础面试题
Nov 16 面试题
介绍一下write命令
Aug 10 面试题
Linux的文件类型
Mar 07 面试题
网友共享的几个面试题关于Java和Unix等方面的
Sep 08 面试题
Hibernate持久层技术
Dec 16 面试题
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 实现手机端APP支付宝支付功能
2018/06/07 PHP
深入认识javascript中的eval函数
2009/11/02 Javascript
由JavaScript中call()方法引发的对面向对象继承机制call的思考
2011/09/12 Javascript
50款非常棒的 jQuery 插件分享
2012/03/29 Javascript
jQuery选择器全面总结
2014/01/06 Javascript
jQuery中:reset选择器用法实例
2015/01/04 Javascript
jquery实现动态改变div宽度和高度
2015/05/08 Javascript
XML、HTML、CSS与JS的区别整理
2016/02/18 Javascript
JavaScript的函数式编程基础指南
2016/03/19 Javascript
浅析JavaScript中浏览器的兼容问题
2016/04/19 Javascript
深入理解JS DOM事件机制
2016/08/06 Javascript
canvas绘制多边形
2017/02/24 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
2017/04/13 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
jQuery remove()过滤被删除的元素(推荐)
2017/07/18 jQuery
vue.js 嵌套循环、if判断、动态删除的实例
2018/03/07 Javascript
搭建Vue从Vue-cli到router路由护卫的实现
2019/11/14 Javascript
基于vue和bootstrap实现简单留言板功能
2020/05/30 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
2020/11/06 Javascript
[00:43]FTP典藏礼包 DOTA2三大英雄霸气新套装
2014/03/21 DOTA
c++生成dll使用python调用dll的方法
2014/01/20 Python
Python进程间通信用法实例
2015/06/04 Python
python字符串的拼接方法总结
2019/11/18 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
解决pip install psycopg2出错问题
2020/07/09 Python
python的flask框架难学吗
2020/07/31 Python
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
测试驱动开发的主要步骤是什么
2014/12/10 面试题
语文教育专业推荐信范文
2013/11/25 职场文书
优秀求职信范文分享
2014/01/26 职场文书
教堂婚礼主持词
2014/03/14 职场文书
成绩单家长评语大全
2014/04/16 职场文书
建筑工地文明标语
2014/10/09 职场文书
2015年组织委员工作总结
2015/04/23 职场文书
浅谈mysql增加索引不生效的几种情况
2021/06/23 MySQL