29)有如下C# 代码,则下面选项中说法正确的是(BC)。
public class A { }   Person
public class B : A { }  Student
A a = new A();
B b = new B();
a) 表达式a is B的值为true
b) 表达式b is A的值为true
c) 表达式a as B的值为null
d) 表达式b as A的值为null

26) 在C#中,下面是方法的重载的是(C)。

a) public string Test(int x, int y){ …}和public string Test(int a, int b){ …}同一个方法
b) public string Test1(int x, int y){ …}和public string Test2(int x, int y){ …}
c) public string Test(int x, int y){ …}和public string Test(int a){ …}
d) public string Test(int x, int y){ …}和public int Test(int x, int y){ …}

25) 关于如下C#代码的说法中,正确的是(D)。
public class Test    //⑴
{
    private static int Max = 100;    //⑵ 成员变量:
    public Test(int max)
    {
     
        Max = max;    //⑶
    }
    public int GetMax()
    {
        return Max;    //⑷
    }
}

a)在⑴行中必须将Test类定义为静态类
       静态变量可以不出现在静态类中
b) 在⑵中不能将静态成员Max定义为private的
c) 在⑶中不能给静态成员Max赋值
d) 在⑷中可以使用静态成员Max

24) 关于如下C#的代码,说法正确的是(C);
public class A
{
    string S1;
    protected string S2;
    protected void M1()
    {

}

}
public class B : A
{
   
    protected string S3;
}

a) 在A中可以访问S3  解析(父类中不可以访问子类受保护成员)
b) 在B中可以访问S1  解析( 如果类中变量没哟访问修饰符修饰,默认访问修饰符是private)
c) 在B中可以访问S2   解析(可以:因为其访问修饰符是protected类型)
d) 在M1( ) 中可以访问S3   解析(不可以在父类方法中访问子类字段)

23) 在C#中,下面关于结构的说法中,正确的是(C)。

a) 结构和类都是引用类型  
b) 定义结构的变量必须用new 
c) 不能在定义结构时给结构的成员设置初始值
d) 结构中的整型成员被自动初始化为1    自动初始化为0

22) 下面不是C#中类的访问修饰符的是(AD)。 
 a) protected
 b) internal
 c) public
 d) internal protected

Public在任何位置都可以访问,甚至是跨程序集都可以访问,
Internal只能在当前程序集中的任何位置访问,出了当前程序集,就无法访问。
在定义内部类的时候可以使用A和D作为类的访问修饰符

21) 下面关于单例模式说法错误的是(A)。

a) 在单例模式中,允许通过new 构造实例
 b) 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例
 c) 在C# 中,static 是实现单例模式的重要关键字
 d) 单例模式可以确保所有对象都访问唯一的实例

19)分析如下C#程序,运行输出的结果是( B)。
   注意是结构体
public struct Size
    {
        public int x;
        public int y;
        public Size(int x, int y)
        {
            this.x = x;
            this.y = y;
        }
    }

16) C#中的多态不能通过(D )实现。

a) 方法重载
        方法重载多态的体现!

b) 抽象类
 c) 虚方法
 d) 密封类 密封类都无法被继承,何来多态呢?因为我们知道多态的前提是继承。
    class Test
    {
        static void Main()
        {
            Size size1 = new Size(8,10);
            Size size2 = size1;
            size1.y = 200;
            Console.WriteLine("{0} | {1}",size1.y,size2.y);
        }
    }
 
 a) 200 | 200
 b) 200 | 10
 c) 10 | 10
 d) 10 | 200

11) 现有类“c1”,它所在的命名空间为“a.b”,则下列说法中错误的是(D )。 
 a) 不同命名空间下仍可存在名称为c1的类
 b) 不同命名空间下使用c1时,可以通过“using a.b”引入命名空间
 c) 同一命名空间下的类,使用c1时不需要引入c1的命名空间
 d) 不同命名空间下使用c1时,不可以直接通过“a.b.c1”的方式使用
  D选项可以但是麻烦

9) 在开发C#程序过程中,会大量地使用类和对象,其使用方法不包括( BC)。

a) 将类实例化为对象
 b) 将对象实例化为类
 c) 通过类访问非静态属性或方法
 d) 通过对象访问非静态属性或方法

3) 下列关于虚方法(virtual)和抽象方法(abstract)的描述中错误的是( C)。

a) 虚方法必须有方法体,可以被子类重写
 b) 抽象方法不允许有方法体,且必须被子类重写
 c) 抽象方法必须在抽象类中,而虚方法可以在所有类中
       密封类和静态类中不能书写
 d) 在子类中重写抽象方法或虚方法,都需要用override关键字

2) 在C#中,下列关于简单工厂设计模式的说法不正确的是( A )。 
a) 简单工厂产生的对象都是静态对象
对象没有静态和动态之分
b) 创建产品的方法返回类型都是父类
c) 使用该模式解决了代码中大量使用new 的问题
工厂模式:
   单例模式
   3个:
    简单工厂
    工厂模式
    抽象工厂模式
  Public  class Factory
{
   Public static Animal CreateProduct(string type)
    {
        Animal animal=null;
         Return animal;
     }
}
原则:开闭原则(对修改关闭,对添加开放)
 d) 简单工厂的缺点是对修改不封闭,新增加产品就需要修改工厂

1) 以下关于序列化和反序列化的描述错误的是( C)。

a) 序列化是将对象的状态存储到特定存储介质中的过程
 b) 二进制格式化器的Serialize()和Deserialize()方法可以分别用来实现序列化和反序列
化过程
解析:BinaryFormatter
 c) 如果一个类可序列化,则它的子类和包含的各成员对象也一定可序列化
   问题出在了子类,如果子类压根不能进行序列化操作,则会抛出异常
 d) 标识一个类可以序列化要使用[Serializable]

深入.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. S2 深入.NET和C#编程 笔试测试错题积累

    ---恢复内容开始--- <深入.NET平台和C#编程>内部测试题-笔试试卷错题积累 1: 1) 以下关于序列化和反序列化的描述错误的是( C). a) 序列化是将对象的状态存储到特定存储 ...

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

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

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

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

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

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

  7. Arcgis engine编程报错查询(转)

    Arcgis engine编程报错查询 标签: arcgis arcengine arcgisengine 2016年04月10日 17:29:35429人阅读 评论(0) 收藏 举报  分类: Ar ...

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

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

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

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

随机推荐

  1. linux常用基本命令不全

    pwd 显示当前目录 ls -lh 显示文件列表,h表示会显示文件的大小 mkdir zhu  创建文件夹zhu rmdir zhu 移除文件夹zhu如果abc中含有其他文件,则不能删除 rm -r ...

  2. 【NOIP2016提高A组集训第1场10.29】配对游戏

    题目 流行的跳棋游戏是在一个有mn个方格的长方形棋盘上玩的.棋盘起初全部被动物或障碍物占满了.在一个方格中,'X'表示一个障碍物,一个'0'-'9'的个位数字表示一个不同种类的动物,相同的个位数字表示 ...

  3. 算法——得到数据流中前K大的数

    用优先队列 public PriorityQueue<Integer> kthLargest(int k, int[]a) { PriorityQueue<Integer> q ...

  4. Nginx之概念和简介

    Nginx是什么? 代理服务器,处于客户端和服务器端之间的一台服务器,不负责处理请求. 主要作用是什么? 1.负载均衡: 高并发场景下,Nginx代理服务器按一定规则将请求分发,从而使服务器能有条不紊 ...

  5. vue项目中监听sessionStorage值发生变化

    首先在main.js中给Vue.protorype注册一个全局方法, 其中,我们约定好了想要监听的sessionStorage的key值为’watchStorage’, 然后创建一个StorageEv ...

  6. XML 验证

    拥有正确语法的 XML 被称为“形式良好”的 XML. 通过 DTD 验证的 XML 是“合法”的 XML. 形式良好的 XML 文档 “形式良好”或“结构良好”的 XML 文档拥有正确的语法. “形 ...

  7. 关于java实现断点续传的上传下载功能问题

    在web项目中上传文件夹现在已经成为了一个主流的需求.在OA,或者企业ERP系统中都有类似的需求.上传文件夹并且保留层级结构能够对用户行成很好的引导,用户使用起来也更方便.能够提供更高级的应用支撑. ...

  8. UNIX环境C - 系统信号

    一.信号的概念 信号就是一种软中断,进程与进程之间信号的传递,都是通过内核来当做中转站的,不能直接传递信号. 二.信号的分类(128位信号,不过可用信号就1~64除去32与33) 1.不可靠信号(SI ...

  9. git本地分支推送到远程分支

    1.创建的创建和初始化 创建git仓库可以在远端创建一个仓库, 然后check到本地,在本地的文件里创建工程文件,然后提交 也可以将本地现有的工程和远端的空仓库关联 本地创建了一个工程 iOSDemo ...

  10. Arthas随笔

    目录 Arthas 安装Java 安装 Arthas Arthas 命令及示例 源码分析 Arthas 安装Java 下载jdk 注意 下载的JDK版本要与linux操作系统相匹配,否则汇报No su ...