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. 《Head First 软件开发》阅读三

    足够好的设计:以良好的设计完成工作 良好的设计有助于交付软件. 有些项目的进程会打破单一责任的原则,当每个对象只有一个理由去改变时,已经正确地实施了单一责任原则.辨别设计中的多重责任,对实现类中的东西 ...

  2. 基础习题1——print

    引号内,空格就表示空格,引号外,逗号表示空格 print('100+200 =',100 + 200)===100+200 = 300 print('hello','world')===hello w ...

  3. JAVA笔记14-线程

    一.概念 线程:是一个程序里面不同的执行路径,每一个分支都叫线程.到现在为止我们所讲的程序分支只有一个,即main方法,称作主线程. 进程:class文件,exe文件.程序的执行过程:程序放入代码区( ...

  4. 【NOIP2016提高A组集训第14场11.12】随机游走

    题目 YJC最近在学习图的有关知识.今天,他遇到了这么一个概念:随机游走.随机游走指每次从相邻的点中随机选一个走过去,重复这样的过程若干次.YJC很聪明,他很快就学会了怎么跑随机游走.为了检验自己是不 ...

  5. 【NOIP2016提高A组模拟9.24】天使的分裂

    题目 分析 这题可以递推, 但是\(O(n)\)还是会超时, 就用矩阵快速幂. #include <cmath> #include <iostream> #include &l ...

  6. Python 元组Ⅰ

    Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: 创建空元 ...

  7. react项目导出数据怎么做?

    做项目遇到导出数据,搜索了一个插件,简直太好用,几行代码就可以搞定. 插件是react-csv, 了解详细介绍大家可以去https://www.npmjs.com/package/react-csv

  8. 洛谷 P1282 多米诺骨牌 ( 线性DP )

    题意 : 题目链接 分析 :  一开始这个想法也有想到,但是貌似要开很大数组,就感觉应该不行 遂放弃想其他方法,万万没想到注意到可以滚动优化(其实不优化也可以过) 定义 dp[i][j] 表示 到第 ...

  9. IView入门练习~CDN模式全局加载JS

    关于 iView iView 是一套基于 Vue.js 的开源 UI 组件库,主要服务于 PC 界面的中后台产品. 特性 高质量.功能丰富 友好的 API ,自由灵活地使用空间 细致.漂亮的 UI 事 ...

  10. 48 条高效率的 PHP 优化写法

    来源:歪麦博客 https://www.awaimai.com/1050.html 1 字符串 1.1 少用正则表达式 能用PHP内部字符串操作函数的情况下,尽量用他们,不要用正则表达式, 因为其效率 ...