1、Class1.str; private int i = 0; static void StringConvert(string str) str = string being converted. static void StringConvert(Class1 c) c.str = static void Add(int i) i+; static void AddWithRef(ref int i) static void Main() int i1 = 10; int i2 = 20; string str = str Class1 c = new Class1(); Add(i1);
2、AddWithRef(ref i2); Add(c.i); StringConvert(str); StringConvert(c); Console.WriteLine(i1); Console.WriteLine(i2); Console.WriteLine(c.i); Console.WriteLine(str); Console.WriteLine(c.str); 7.写出程序的输出结果public abstract class A public A() Console.WriteLine(A); public virtual void Fun() Console.WriteLine(
3、A.Fun()public class B: A public B()B public new void Fun() B.Fun() public static void Main() A a = new B(); a.Fun();8. 写出程序的输出结果:public class A public virtual void Fun1(int i) Console.WriteLine(i); public void Fun2(A a) a.Fun1(1); Fun1(5);public class B : public override void Fun1(int i) base.Fun1 (
4、i + 1); B b = new B(); A a = new A(); a.Fun2(b); b.Fun2(a);9. 一列数的规则如下: 1、1、2、3、5、8、13、21、34. 求第30位数是多少, 用递归算法实现。(C#语言)10. 程序设计: 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。要求: 1.要有联动性,老鼠和主人的行为是被动的。2.考虑可扩展性,猫的叫声可能引起其他联动效应。参考答案:1. (1) 继承性、封装性、多态性。(考基本概念) (2) IEnumerable 、 GetEnumerator (对foreach机制的理解,本来不想出这题的,凑分) (3) . (
5、送分题, 对ADO.net的了解)评分标准:一空1分,满分10分。2. (1) B、C (考对接口的理解) B、C、D (考查对ADO.net的熟练程度) 评分标准: 一题5分,不选或者错选均不得分。漏选得2分。满分10分。3. . private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 在同一命名空间内可以访问。答对1题2分,2题5分,3题7分。全对10分。 (送分题)4. 解1: select top 10 * from A where id not i
6、n (select top 30 id from A) 解2: select top 10 * from A where id (select max(id) from (select top 30 id from A )as A) 评分标准: 写对即10分。(答案不唯一,datagrid 分页可能需要用到)5. 1.使用QueryString, 如.?id=1; response. Redirect(). 2.使用Session变量 3.使用Server.Transfer .等等 答对1点得3分, 两点7分, 3点10分。6. (考查值引用和对象引用)1021strstring being
7、converted.答对一点得2分,满分10分。7. A BA.Fun() 写出A.B 得5分,写出A.Fun()得5分,满分10分。(考查在继承类中构造函数, 以及new 方法, ) 2 5 1 6 答对一点得2分,两点得5分,3点得7分。全对得10分。(一些人做这题,头都晕了. _ )9. public class MainClass Console.WriteLine(Foo(30); public static int Foo(int i) if (i 0 & i = 2) return 1; 方法参数过多需要扣分(扣除分数 = 参数个数 1) 不用递归算法扣5分 (递归算法在树结构建
8、立等方面比较常用)10要点:1. 联动效果,运行代码只要执行Cat.Cryed()方法。2. 对老鼠和主人进行抽象评分标准: .构造出Cat、Mouse、Master三个类,并能使程序运行(2分) 2从Mouse和Master中提取抽象(5分)3联动效应,只要执行Cat.Cryed()就可以使老鼠逃跑,主人惊醒。(3分) public interface Observer void Response(); /观察者的响应,如是老鼠见到猫的反映 public interface Subject void AimAt(Observer obs); /针对哪些观察者,这里指猫的要扑捉的对象-老鼠 p
9、ublic class Mouse : Observer private string name; public Mouse(string name, Subject subj) this.name = name; subj.AimAt(this); public void Response() Console.WriteLine(name + attempt to escape! public class Master : public Master(Subject subj)Host waken! public class Cat : Subject private ArrayList o
10、bservers; public Cat() this.observers = new ArrayList(); public void AimAt(Observer obs) this.observers.Add(obs); public void Cry()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, c
11、at); Mouse mouse2 = new Mouse(mouse2 Master master = new Master(cat); cat.Cry();/-设计方法二: 使用event - delegate设计. public delegate void SubEventHandler(); public abstract class Subject public event SubEventHandler SubEvent; protected void FireAway() if (this.SubEvent != null) this.SubEvent();cat cryed.
12、this.FireAway(); public abstract class Observer public Observer(Subject sub) sub.SubEvent += new SubEventHandler(Response); public abstract void Response(); public Mouse(string name, Subject sub) : base(sub) public override void Response() public Master(Subject sub) : base(sub)host waken class Class
13、1面试:1. C#中property与attribute的区别,他们各有什么用处,这种机制的好处在哪里?2.讲一讲你理解的web service,在dot net framework中,怎么很好的结合xml?(讲概念就行了)(源码网教程下载,)3. C#, Java和c+的特点,有什么相同的地方,不同的地方,C#分别从c+和java中吸取了他们那些优点?4. C#可否对内存进行直接的操作?(这可是个难点哦?要注意!用Visual C+ 6.0编写的代码(unmanaged code),如何在CLR下和其他dot net component结合?以前作过的一些项目?介绍一下自己的编程经验。(这是蒙混不过去的,基本一问就知道是真是假)你对公司有什么期望?你的薪水期望值?为什么学计算机?以前的工作经验(这非常重要)?
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1