本题考查抽象类和抽象方法的概念。定义抽象类或抽象方法使用的是abstract关键字,抽象类中可以包含抽象方法和非抽象方法,
但抽象方法必须定义在抽象类中,抽象方法定义时只需要定义方法头,不可以定义方法体。故本题说法正确的选项是B,其余均不对。

本题考查抽象类和抽象方法的概念。定义抽象类或抽象方法使用的是abstract关键字,抽象类中可以包含抽象方法和非抽象方法,
但抽象方法必须定义在抽象类中,抽象方法定义时只需要定义方法头,不可以定义方法体。故本题说法正确的选项是B,其余均不对。

本题考查使用virtual和override实现方法重写,这两个关键字要熟记,使用virtual关键字将方法标记为虚方法,
使用override关键字实现方法重写,故本题选择B选项,C选项中abstract将方法标记为抽象方法,D选项中是定义接口的关键字。

A是错的,base只能写在方法体大括号的前面
C是错的,base后没有大括号
D是错的,与AC一样

本题考查如何使用virtual和override实现方法重写,方法重写即在子类中重写父类的虚方法,要求不同类同名同参,
而方法重载是要求同类同名不同参。另外,使用virtual关键字修饰的方法是虚方法,故可以在子类中使用override关
键字重写。故选项B、D说法正确,A、C说法错误。

在C# 语言中,public、protected、private 的外部访问权限是依次递减的,public 没有限制,而protected的限制就是只有子类可以访问。

此题目考查的是使用virtual和override实现方法重写和多态。virtual可以和static、abstract、private、override修饰符一起使用。

《深入.NET平台和C#编程》--题型释疑的更多相关文章

  1. S2---深入.NET平台和C#编程的完美总结

    1.NET简单解说 l 面向对象提升 OOP(Object Oriented  Programming)面向对象编程 AOP:(Aspache  Oriented Programming):面向切面编 ...

  2. 深入.net平台和c#编程 学习笔记

    深入.net平台和c#编程 一:理解.nteFramwork与c# 1.1,:Microsoft.net框架概述 1.2:.net框架结构 1.3.:c#语言概述 1.4:体验框架类库的强大功能 二: ...

  3. 使用ReactiveCocoa实现iOS平台响应式编程

    使用ReactiveCocoa实现iOS平台响应式编程 ReactiveCocoa和响应式编程 在说ReactiveCocoa之前,先要介绍一下FRP(Functional Reactive Prog ...

  4. [转]使用ReactiveCocoa实现iOS平台响应式编程

    原文:http://www.itiger.me/?p=38 使用ReactiveCocoa实现iOS平台响应式编程 ReactiveCocoa和响应式编程 在说ReactiveCocoa之前,先要介绍 ...

  5. 《深入.NET平台和C#编程》内部测试题-笔试试卷答案

    1)      以下关于序列化和反序列化的描述错误的是( C). a)      序列化是将对象的状态存储到特定存储介质中的过程 b)      二进制格式化器的Serialize()和Deseria ...

  6. 我们可以用JAX-WS轻松实现JAVA平台与其他编程环境(.net等)的互操作

    在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP,在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码.JAX-WS的运行时实现会将这些API的调用转换 ...

  7. ROS Learning-029 (提高篇-007 A Mobile Base-05) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-05 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(精确的制定目标位置) 使用 odometry 消息类型 重写 out_and_ba ...

  8. ROS Learning-028 (提高篇-006 A Mobile Base-04) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(不精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-04 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(不精确的制定目标位置) 我使用的虚拟机软件:VMware Workstation ...

  9. .NET平台和C#编程的总结

    第一章   简单认识.NET框架    (1)首先我们得知道 .NET框架具有两个主要组件:公共语言进行时CLR(Common Language Runtime)和框架类库FCL(Framework ...

随机推荐

  1. Atitit. Xss 漏洞的原理and应用xss木马

    Atitit. Xss 漏洞的原理and应用xss木马 1. XSS漏洞1 2. XSS的用途2 2.1. 盗取cookie2 2.2. 刷新流量 刷分3 2.3. DOS 窃取隐私”.“假冒身份”. ...

  2. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q73-Q76)

    Question 73You create a Web Part that calls a function named longCall.You discover that longCall tak ...

  3. android studio问题rendering problems no render target selected

    activity_main.xml选择Design显示rendering problems no render target selected 在stackOverflow上找到了答案: You ne ...

  4. 操作数据库系统(OLTP)和联机分析处理系统(OLAP)的区别

    联机操作数据库系统的主要任务是执行联机事务和查询处理.这种系统称为联机事务处理(OnLine Transaction Processing,OLTP) 系统.它们涵盖了单位的大部分日常操作,如购物,库 ...

  5. oracle 表空间使用情况

    --表空间使用情况 SELECT a.tablespace_name "表空间名", round(total/1024/1024,2) "表空间大小", rou ...

  6. xcode 设置快捷键 整行上下移动

    设置整行代码上下移动:找到Xcode中的自带的配置文件:/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/ ...

  7. 一步步学敏捷开发:4、Scrum的3种角色

    在Scrum角色中包括:产品负责人(Product Owner,PO).ScrumMaster(SM).开发团队(Team). 角色:产品负责人(PO) Scrum团队只有一个产品负责人,他负责在限定 ...

  8. Effective Java 38 Check parameters for validity

    For public methods, use the Javadoc @throws tag to document the exception that will be thrown if a r ...

  9. easyui-validatebox 验证两次密码是否输入一致

    验证两次密码是否输入一致 $.extend($.fn.validatebox.defaults.rules, {        /*必须和某个字段相等*/        equalTo: { vali ...

  10. Json常用的转换

    简单记录一下jquery里面的JSON.parse()和JSON.stringify()函数,和js中的eval()函数的用法 1,JSON.parse 函数(常用) 作用:将 JavaScript ...