新蛋NewEgg软件工程师面试题笔试题 (.net)
新蛋
笔试
I. 程序员(初级)
三张表:S(SNO, SNAME), C(CNO, CNAME, CTEACHER), SC(SNO, CNO, SCGRADE)
1) 查询出学生成绩SNO, SNAME, CNO, CNAME, SCGRADE
2) 查询出每位老师所任每门课的不及格学生人数
3) 查询出每位学生每门课的学生成绩等级:A(>=90)、B(90>scgrade>=80)、C(80>scgrade>=60)、D(<60)
4) 查询出每位学生所有成绩等级为A、B的课程
II. .NET
1. finally 与return的关系。在try中return后,类的成员变量还能否在finally中继续使用。
2. 怎样从弹出窗口中刷新主窗口?
3. 列举三种以上页面重定向的方式(包括服务端和客户端)。
4. DataSet和DataReader的原理和区别,分别适用于哪些情况?
5. public class Parent
{
Public Parent()
{
Console.WriteLine(“Parent”);
}
}
继承Parent类,并通过其派生类的构造函数输出“Parent”,但子类构造函数中不能有输出语句
6. public class Test
{
Public object this[int index]
{
Get{return null;}
}
}
7. public class Base
{
Public Base()
{
This.print();
}
Void print(){Console.WriteLine(“Base()”);}
}
Public class Sub: Base
{
Public Sub()
{
New Sub();
}
Void print(){Console.WriteLine(“Sub()”);}
}
8. 某类既从某父继承,又实现了某个接口,且该接口也被刚才涉及到的父类继承,然后在子类中重新实现在接口和父类中方法名相同的方法,是什么结果
9. Attribute的参数?
10. 怎样确定垃圾确实被回收了,调用了supressfinalize或collect方法就一定销毁了对象吗?显示调用了析构方法就一定销毁了对象吗?
11. …临界区?
12. Code Behind 与Code Inline的区别
13. 怎样进行Forms的身份验证
14. new、override、interface、abastract及方法覆盖与多态的组合问题?
15. 值类型和引用类型的区别与联系
16. ref 与out
17. Math.Round
18. Thread中的Sleep与Suspend有什么区别,Abort的用法
19. 定义一个有索引器的类,并能枚举
20. 怎样配置ViewState
面试
(两个面试官都是“MVP”,平均年龄可能在22岁左右,没有问软件工程的问题)
I. 数据库
1. 索引
索引的优势,怎样考虑建立索引
2. 存储过程/锁和事务
1) 存储过程的优势及不足
2) 存储过程有几种返回形式
3) 如果前面的操作正确但后面某一步有执行有错,会是一个什么结果(保存前面的结果还是回滚作),如果出现异常,怎么处理
4) 批处理(包括存储过程中),锁机制是怎样的(允许查询及DML吗)?
3. 联接
1) 联接的种类,内联接及左右联接的区别
2) 要联接的表是否必须要有主键
4. UNION
怎样将两个查询语句分别按指定的顺序排列(order by)
II. .NET(奇怪!没有问一个ADO.NET方面的问题)
1. ASP与ASP.NET中Session的区别
2. Session、Application、Cookies的区别
3. ViewState的原理及注意的问题(效率及改善)
4. Code Behind的实现原理,控件对象的实例化
5. IIS对ASP及APS.NET的实现原理
6. ASP及ASP.NET缓存的区别,如何实现
7. 多态的实现方式,并举例说明;可以用不同类实现不同的操作,为什么非要用多态?
8. Remoting原理及实现
9. Web Services原理及实现
10. 设计模式
