public void AimAt(Observer obs)

{

this.observers.Add(obs);

}

public void Cry()

{

Console.WriteLine("Cat cryed!");

foreach (Observer obs in this.observers)

{

obs.Response();

}

}

}

class MainClass

{

static void Main(string[] args)

{

Cat cat = new Cat();

Mouse mouse1 = new Mouse("mouse1", cat);

Mouse mouse2 = new Mouse("mouse2", cat);

Master master = new Master(cat);

cat.Cry();

}

}

Cat cryed!

mouse1 attempt to escape!

mouse2 attempt to escape!

Host waken!

请按任意键继续. . .

写出程序的输出结果

using System;

class Program

{

private string str = "Class1.str";

private int i = 0;

static void StringConvert(string str)

{

str = "A string being converted.";

}

static void StringConvert(Program c)

{

c.str = "B string being converted.";

}

static void Add(int i)

{

i++;

}

static void AddWithRef(ref int i)

{

i++;

}

static void Main()

{

int i1 = 10;

int i2 = 20;

string str = "str";

Program c = new Program();

Add(i1);

AddWithRef(ref i2);

Add(c.i);

StringConvert(str); //string无法被改变

StringConvert(c);   //传递对象string可以被改变

Console.WriteLine(i1);

Console.WriteLine(i2);

Console.WriteLine(c.i);

Console.WriteLine(str);

Console.WriteLine(c.str);

}

}

运行结果:

10

21

0

str

B string being converted.

请按任意键继续. . .

写出程序的输出结果

using System;

public abstract class A

{

public A()

{

Console.WriteLine('A');

}

public virtual void Fun()

{

Console.WriteLine("A.Fun()");

}

}

public class B : A

{

public B()

{

Console.WriteLine('B');

}

public new void Fun()

{

Console.WriteLine("B.Fun()");

}

public static void Main()

{

A a = new B();

a.Fun();

}

}

运行结果:

A

B

A.Fun()

请按任意键继续. . .

有继承关系,在构造子类的时候会先构造父类;Fun函数在子类是被new了一下,只是显示隐藏,并没有重写,所以输出还是A.Fun()。如果子类是被override,则最后输出B.Fun

写出程序的输出结果

using System;

public class A

{

public virtual void Fun1(int i)

{

Console.WriteLine(i);

}

public void Fun2(A a)

{

a.Fun1(1);  //以传递进来的对象选择哪个Fun1

Fun1(5);    //以调用此方法的对象选择哪个Fun1

}

}

public class B : A

{

public override void Fun1(int i)

{

base.Fun1(i + 1);

}

public static void Main()

{

B b = new B();

A a = new A();

a.Fun2(b);

b.Fun2(a);

}

}

输出结果:

2

5

1

6

请按任意键继续. . .

冒泡排序

using System;

public class MainClass

{

public static void ArraySort()

{

int[] Arr = { 9, 8, 7, 6, 5, 4, 3, 2, 1 };

int t = 0;

//从小到大排序

for (int i = 0; i < Arr.Length - 1; i++)            //总共需要N-1趟

{

for (int j = 0; j < Arr.Length - 1 - i; j++)    //每趟总共需要(N-1-趟数)次比较

{

if (Arr[j] > Arr[j + 1])

{

t = Arr[j];

Arr[j] = Arr[j + 1];

Arr[j + 1] = t;

}

}

}

foreach (int i in Arr)

{

Console.Write(i + ",");

}

}

public static void Main()

{

ArraySort();

}

}

输出:1,2,3,4,5,6,7,8,9,请按任意键继续. . .

写出程序的输出结果

using System;

class A

{

public static int X;

static A()

{

X = B.Y + 1;

}

}

class B

{

public static int Y = A.X + 1;

static B() { }

static void Main()

{

Console.WriteLine("X={0},Y={1}", A.X, B.Y);

}

}

输出结果:

X=1,Y=2

请按任意键继续. . .

在.net(C# or vb.net)中如何用户自定义消息,并在窗体中处理这些消息。

在form中重载DefWndProc函数来处理消息:

protected override void DefWndProc(ref System.WinForms.Message m)

{

switch (m.msg)

{

case WM_Lbutton:

///string与MFC中的CString的Format函数的使用方法有所不同

string message = string.Format("收到消息!参数为:{0},{1}", m.wParam, m.lParam);

MessageBox.Show(message);///显示一个消息框

break;

case USER:

//处理的代码

default:

base.DefWndProc(ref m);///调用基类函数处理非自定义消息。

break;

}

}

请说明如下代码的结果

using System;

class Father

{

public virtual void show()

{

Console.WriteLine("Father");

}

static void Main(string[] args)

{

Father obj = new Child();

obj.show();

}

}

class Child : Father

{

public override void show()

{

Console.WriteLine("Child");

}

}

输出:

Child

请按任意键继续. . .

如果把virtual和override去掉,输出结果为Father

.net 常见面试题的更多相关文章

  1. java常见面试题及答案 1-10(基础篇)

    java常见面试题及答案 1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"? Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程.Java 源文件被 ...

  2. Web开发的常见面试题HTML和HTML5等

    作为一名前端开发人员,HTML,HTML5以及网站优化都是必须掌握的技术,下面列举一下HTML, HTML5, 网站优化等常见的面试题: HTML常见面试题: 1. 什么是Semantic HTML( ...

  3. 常见面试题之ListView的复用及如何优化

    经常有人问我,作为刚毕业的要去面试,关于安卓开发的问题,技术面试官会经常问哪些问题呢?我想来想去不能一股脑的全写出来,我准备把这些问题单独拿出来写,并详细的分析一下,这样对于初学者是最有帮助的.这次的 ...

  4. iOS常见面试题汇总

    iOS常见面试题汇总 1. 什么是 ARC? (ARC 是为了解决什么问题而诞生的?) ARC 是 Automatic Reference Counting 的缩写, 即自动引用计数. 这是苹果在 i ...

  5. JDBC常见面试题

    以下我是归纳的JDBC知识点图: 图上的知识点都可以在我其他的文章内找到相应内容. JDBC常见面试题 JDBC操作数据库的步骤 ? JDBC操作数据库的步骤 ? 注册数据库驱动. 建立数据库连接. ...

  6. Mybatis常见面试题

    Mybatis常见面试题 #{}和${}的区别是什么? #{}和${}的区别是什么? 在Mybatis中,有两种占位符 #{}解析传递进来的参数数据 ${}对传递进来的参数原样拼接在SQL中 #{}是 ...

  7. JavaSE:数据类型之间的转换(附常见面试题)

    数据类型之间的转换 分为以下几种情况: 1)低级到高级的自动类型转换: 2)高级到低级的强制类型转换(会导致溢出或丢失精度): 3)基本类型向类类型转换: 4)基本类型向字符串的转换: 5)类类型向字 ...

  8. 整理的最全 python常见面试题(基本必考)

    整理的最全 python常见面试题(基本必考) python 2018-05-17 作者 大蛇王 1.大数据的文件读取 ① 利用生成器generator ②迭代器进行迭代遍历:for line in ...

  9. PHP常见面试题汇总(二)

    PHP常见面试题汇总(二)   //第51题:统计一维数组中所有值出现的次数?返回一个数组,其元素的键名是原数组的值;键值是该值在原数组中出现的次数 $array=array(4,5,1,2,3,1, ...

  10. java常见面试题及答案

    java常见面试题及答案 来源 https://blog.csdn.net/hsk256/article/details/49052293 来源 https://blog.csdn.net/hsk25 ...

随机推荐

  1. Android技术——在Android中的随意视图中找控件

    1.在非常多情况下,我们可能不知道控件的id,可是我们却希望在包括这个控件的视图中找到它,能够採用例如以下做法: 例:在Activity的根视图中找出当中全部的Button控件 private voi ...

  2. 解决Xcode 6 编译Cocos2d-x iOS项目失败

    在Xcode 6 beta里编译Cocos2d-x iOS项目时可能会失败,提示如下错误: Undefined symbols for architecture i386: "_fwrite ...

  3. Android动画之旅-Android动画基本介绍

    在上一篇博客中.我们简单了解了在Android中的动画特效.小伙伴们是不是意犹未尽呀. 还没有看的猛戳这里:Android动画之旅一开篇动画简单介绍 本篇博客.将和大家一起来分析Android中的四大 ...

  4. android4.4系统永不锁屏

    android4.4\frameworks\base\packages\Keyguard\src\com\android\keyguard\KeyguardViewMediator.java /** ...

  5. taro + taro-ui + dva

    taro的安装及使用 安装 Taro 开发工具 @tarojs/cli 使用 npm 或者 yarn 全局安装,或者直接使用npx $ npm install -g @tarojs/cli $ yar ...

  6. 生成批量删除多个表sql语句

    --批量删除多个表 select 'drop table ' +name from sysobjects where type = 'U' order by name

  7. oracle 使用REGEXP_SUBSTR正则表达式拆分字符串

    SELECT REGEXP_SUBSTR ('first field, second field , third field', '[^,]+', 1,rownum) FROM DUAL CONNEC ...

  8. 在 SELECT 查询中使用集运算符

    在 SELECT 查询中使用集运算符,可以将来自两个或多个查询的结果合并到单个结果集中. 在进行集运算之前,请确保: (1)所有输入集合中,列数和列的顺序必须相同. (2)对应的列中,数据类型必须兼容 ...

  9. Easyui 二级菜单

    <div class="fitem"> <label>所在城市:</label> <input id="cityId" ...

  10. 转 OAuth 2.0授权协议详解

    http://www.jb51.net/article/54948.htm 作者:阮一峰 字体:[增加 减小] 类型:转载 时间:2014-09-10我要评论 这篇文章主要介绍了OAuth 2.0授权 ...