又一次凡客面试体验_1

    记得在5月9号的时候,我去过凡客面试。这个面试挂了的主要原因是自己差不多快一年都没弄Web方面的项目了。那时根本没想到换工作,主要是看到很多同事都纷纷离职,在中午吃饭的时候难免会讨论一些公司,其中就包括凡客,于是带着好奇晚上回家也投了份简历给凡客。出乎意料的是5月7号的晚上7点多的时候接到凡客的面试通知。。。。

    5月9号早早的到了凡客,盐市口中环广场36楼,也算成都市的中心了吧。进入凡客被前台MM妹妹接待到一个办公室里边,然后人事部的拿了份表单给我,填写自己的一些基本信息。差不多10分钟后就开始真正地面试之旅了。。。。

    一个男的,差不多30来岁,拿着我的简历看看了,就开始向我开炮了。第一句话就感觉被藐视了,“你才工作一年吧,那我问你一些简单的问题”。

    第一道题:阶乘5!:这个题平时都不知道写了多少个N次了,可当时不知道怎么就蒙了。然后他就安慰的说,这些东西其实只有在学校才写,离开学校一年了差不多忘了也正常。

public int getNum(int n){

if(n==1 || n==0)

return n;

else{

return n*getNum(n-1);

}

}

    第二道题:说说抽象类和接口的区别,这个题以前面试被问过N次了,然后我也结合自己的项目简单的说了下。就例如我们的项目分平台和子系统,平台都是提供接口给子系统来加载子系统的。然后他就问这个可不可使用抽象类了,由于平台必须要保证子系统的可扩展性就必须使用接口。他又问,如果现在就只有这些功能不需要扩展那能不能使用抽象类呢,反正我是被问蒙了。

    抽象类和接口的区别:
1、抽象类中抽象方法只能有方法声明,不能包含方法体;而方法就可以包含方法体;接口只有方法声明。
2、抽象类可以包含字段而接口不能包含字段。
3、抽象类的所有成员可以添加访问修饰符,而接口不能显示的添加修饰符。
4、接口是多继承,而抽象类是单继承。
5、例如,Windows窗体可以用抽象类来实现,把共有的操作和属性放到抽象类里边,让窗体继承这个抽象类,在根据自己的需求来扩充。而例如打印功能就可以提取成接口,因为窗体的具体内容不同,就需要根据自己的要求去实现打印功能。打印时只通过接口来调用,而不在乎哪个窗体来打印。而且打印的时候只需通过接口调用不要调用整个窗体。

 

    第三道题:你了解页面的生命周期吗?这些早都忘得差不多了,就只是简简单单的说了些页面生命周期的一些事件。哎,再次蒙了。。。

》aspx页面通过网络访问服务器
》IIS接受服务请求
》IIS分析请求,返回静态结果(静态文件);处理不了的请求就通过映射表发送到ASPNET_ISAPI.DLL可扩展程序
》可扩展程序程序把请求交给aspnet_wp.exe或者aspnet_w3wp.exe程序
》aspnet_wp.exe或者aspnet_w3wp.exe调用IHttpRunTime接口的方法处理请求。由IHttpRunTime来处理所有的请求,他的工作:
(1)将报文数据装入HttpWorkerRequest对象对应的属性(便于其他地方使用)
(2)调用HttpApplicationFactory类的静态方法创建HttpApplication对象。(创建之前查看HttpApplication池,有没有空闲HttpApplication

,没有才创建)
(3)创建HttpContext上下文,HttpContext主要包含HttpRequest和HttpRespnose两个对象
 HttpRequest包含所有的请求信息,来源于HttpWorkerRequest对象的属性
 HttpResponse包含TestWriter对象,来存储返回结果
(4)需要将HttpContext对象保存到HttpApplication对象中,因为HttpApplication对象要执行IHttpHandler接口对象的ProcessRequest方法需

要上下文
》HttpApplication执行ProcessRequest方法(即执行管道),一共有19个事件,第八个事件时创建HttpHandler对象(页面对象),11到12事件

之间,执行被创建HttpHandler对象的ProcessRequest方法。

页面生命周期:
1、PreInit:设置master Page、设置主题、初始化控件
2、Init:此事件发生在所有的控件被初始化以后,读取或者初始化控件的属性。
3、InitComplete:初始化完成事件
4、PreLoad:加载页面的ViewState和所有控件,然后处理包含在Request中的Postback数据。
5、Load:此事件先递归调用控件的onload事件,直到所有的控件被加载完成。这个事件主要用来设置控件的属性的值。
6、LoadComplete:加载完成事件。
7、PreRender:在HTML被生成之前的最后一个事件,这个事件也是修改被返回的HTML的最后机会。
8、Render:主要把HTML返回到客户端。
9、UnLoad:清理页面,递归清理页面控件,例如关闭打开文件,关闭数据库连接等等。

  

    第四道题:你使用Jquery吗?这个我肯定使用过的,我简历上都些的有,可也是很长时间都没用了呀。然后他问我$("#..."),这个是通过什么获取的。这个我肯定知道,元素ID呀。然后叫我说一些其他的选择器,回答的也就吞吞吐吐的。

   基本:$("#id")、$(".class")、$("element")、$("elem1,elem2,..")

  层次: $("ances dese")、$("parent > child")、$("prev + next")、$("prev~siblings")

  属性:[attribute] [attribute=value][attribute!=value][attribute^=value][attribute$=value]等等。

 

   问我有没有用Sql Server,因为我现在这个项目没有用,我就说好久没用了,当时那个"傻"呀。然后问我简单的Sql语句。

 colum1   colum2 

  a     2

   b     3

   a    4

   b    2

   c    4然后写Sql语句统计:SELECT colum1, SUM(colum2) FROM table GROUP BY colum2 ORDER BY column1。他也没说对还是错。

后面还想还有些问题记不得了,反正是一次有一次的蒙了,其实自己也是去抱着试试的态度,因为自己也很久没写asp.net。

   

    在这之后,我就决心花两个月的事件复习asp.net方面的知识以及在把ClR via C#的重点知识看一次。

   下面继续自己的第二次凡客面试总结。。。

又一次凡客面试体验_2

   

posted @ 2012-07-07 11:58  heavi  阅读(4765)  评论(27编辑  收藏  举报