您好,欢迎访问三七文档
东软面试试题(B)1堆和栈那个是对程序员透明的?答案:栈。2请结合具体实例阐述一下面向对象中多态的概念。答案:同一操作用于不同的类的实例,不同的类将进行不同的解释,最后产生不同的结果,它有两种:→编译时多态----通过overload来实现,系统在编译时,根据传递的参数和返回的类型等信息决定实现何种操作→运行时多态----通过override来实现,根据运行时具体对象的类型决定调用哪个方法。给我面试的人很有亲和力,我没有感到有压力。首先是自我介绍;他根据你自己介绍的情况来问你问题,我主要是说得现在正在做的青软实训内部管理系统。你在项目组里主要负责什么?是怎么做的?主要负责页面前台展示,我现在设计页面框架,用的Struts-tile;把页面分为4部分,sidebar,header,footer,context;然后把sidebar,header,footer这些每个页面都要用的写成一个整体,放在配置文件中,每个页面都引用他,这样就不用变了。变得就是context部分。另外在sidebar里面,用javascript来实现导航栏的弹出功能。用什么方法可以检测一个环行链表?首先可以在data里面初始化一个数据,然后向下循环,可以找到这条数据的话,就是环行链表,否则就不是;但这个链表不一定是完全的链表,里面可能有分支,该怎么检测?设置一个循环,条件设为true,如果可以结束就不是,不能结束里面就有环。那这样的话怎么让他跳出循环呢?我也不知道,那请教一下吧。你看看如果next引用如果相同的话是不是就是环行链表?对,是那你想个办法来实现他吧。把这个next引用,写进一个list,以后都把next引用和list里面的内容进行比较,如果有相同的就是环,没有就不是。但如果链表很大,而你做的是嵌入式项目,有内存溢出,该怎么检测呢?呵呵,我想不出来了。1.2.自我介绍,(注自我介绍中的自我经历可能会成为他的考点)3.我在自我介绍中说了我参加过数学建模,他问了我我们建的什么模型,我给他介绍了一下。主要考点是你的思路问题。4.单链表若最后一个节点指向前面的某个节点,请问怎么检测出现了环?主要是考察你对问题有无解决方案,不对也无所谓,最后他一定会把你难倒。怎么也要说上几句,不说那就over了。5.Final和finally的区别?6.Java的垃圾回收机制?45两题应该都会,我就不说了。1。什么是J2EE,J2SE,J2ME这个就不用说了吧2。什么是EJB也不用说了吧3。你做过哪些项目,负责该项目的哪个模块,M、V还是C我说我做过一个网上花店,负责管理员模块,然后简单说了一下这个模块的各项功能,他让我说是M、V还是C,我说这个项目的目的之一是让我门每个人对整个流程都有所锻炼,所以没有谁只做M或者V或者C,一个人负责一个模块,然后做这个模块的全部。4。我说我学到STRUTS了,他问我ACTION和ACTIONFORM是什么关系,是一对一吗,是一个ACTION一个ACTIONFORM吗,确定吗?我说是的,确定一定以及肯定。因为一个ACTION标签里只有一个NAME属性(他说这个我知道)。5。学过日语啊,说个句子你翻译一下吧,@#$%#%$...我也@#$#@%$#%...然后他说“恩,还懂点日语皮毛,学起来应该快一些。”技术上也就这些了,别的也没什么了,不知道为什么就问我这些,我准备的那些他一个也没问着,可能我一开始说我正在学J2EE,把他引向了这个方向,或者是我回答的太快了,时间太紧了。就这些。东软面试总结:1.问题:栈和队列的主要区别答案:栈----------后进先出;队列--------先进先出。2.问题:完全二叉树的结构答案:深度为k,有n个节点的二叉树,当且仅当其每一个节点都与深度为k的满二叉树中编号从1至n的结点一一对应时,称之为完全二叉树。当初面试人员画了几个树让我辨认谁是完全二叉树。3.问题:什么是索引答案:索引依附于基表,建立索引是加快查询的有效手段。4.问题:什么是视图答案:视图是关系数据库系统提供给用户以多角度观察数据库中数据的重要机制。是从一个或多个基表(或视图)导出的表,它与基本表不同,是虚表。5.问题:什么是游标答案:游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果,每个游标区都有一个名字。用户可以通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。6.问题:对数据库操作的语句答案:select,insert,update,delete7.问题:数据库的操作过程答案:(1)加载驱动程序;(2)建立数据库连接;(3)向数据库发送SQL语句;(4)事务处理;(5)管理连接。8.问题:所知道的排序方法的种类答案:插入,快速,选择,交换,归并,基数,希尔等。9.问题:什么是MVC答案:这个大家都清楚,可查询有关资料。1。首先得问题就是让我做自我介绍答当然就自己的大致情况说就行了,在这个过程中又让我分析自己的性格与优缺点。然后让说明自己的职业规划。这些都是因自己而定了2。做过的项目简单介绍一下答:做过的项目在来软件园之前没有多少机会只有课程设计的时候做过一个java聊天室的项目,然后来到软件园之后做过jsp的产品支持中心的例子,sruts的固定资产管理的例子,还有hibernate的例子,(可惜我都忘了竟然忘了那个项目的名字了,就是留言板的那个,刚做完竟然忘了)。随后她又随便问我关于java聊天室是不是自己编协议实现的,当然没有。随后让我讲一个项目,我就讲了那个关于struts的项目。因为对方不懂struts,我讲也不知道她听懂了没有。3。问你几个c语言的问题,char*p;inti;p++与i++的区别?这个大家都知道就是p++是指向下一个元素,p的移动位置与p指针指向的类型有关,i++是自身增加一。差不多就是这样说的。p保存占多少位?我开始说与它指向的类型有关,然后她提示我说她不是那个意思,然后我说我感觉是在内存中占16位吧?我是这样说的,其实我也不清楚,c都忘了。char*p=malloc(100),给p分配了多少个字节的空间?是堆内存还是栈内存?我回答100个,(但是我忘了是堆还是栈)我认为是堆内存。4。一个程序编译完成后在内存中是如何存储的??我说这个没有学过,我把我认为的说了一下,她说她就是随便问问。5。java有多态性,继承,什么意思?是如何实现的?(这个我虽然也知道大概但是好像理解的也不是太深刻,说不太清晰)答:我就说了前几天老师利用接口与DAOFactory实现的那个例子,她说那抽象类呢,我说不太上来但是也就我理解的说了点。我又扯上了重载,她就问重载是多态吗?我说不是(因为我记得不是),但是可以实现多态。说得很乱7.最后就是随便聊了。她问我怎么没有考研,为什么?一个女生为什么学软件?然后问我有没有什么问题,我就问了关于对日外包的事情和关于东软的一些事情。1.着装:是第一项。2.英语水平:问:四级539分?答:恩。3.数据库:问:Sql语句是在sqlserver里写的还是在程序里写的?答:学数据库的时候,是在sqlserver里,也在程序里写。问:存储过程有没有用过答:在个人网站里,用到过。4.网络:问:有没有socket编程的经验。答:在大三做过网络五子棋。5.架构:问:三层架构:是什么?正确答案:(web服务器,数据库服务器,应用程序服务器)6.编程语言:问:Java学的怎么样?答:学了一个学期的课程问:C或C++挑一个你最好的。答:C++C++:问:面向对象的特点:解释一下什么继承,多态。答:我在回答的时候,是通过一个经典的例子说的。7.你的项目经验:问:是用什么开发的?答:asp8.日语基础:写一下五十音图,说一个存在句,说一个判断句,说一个你学过的最复杂的句子。首先,面试官对整个试卷的成绩做个一个评价。我的编程做了一个java和一个c语言的。面试官问我这两门语言那一门更熟悉,我说我是.net班的,相对来说对C语言相对熟悉一些。他接着问我什么时候学的C语言,我说大一下学期,他问以后用的多吗?我说:大二以后就不用了,因为C的编程环境太单调了,以后我们就用C++代替了C语言。接着,面试官就以VC++为切入点问我。问题可以分为以下几个:1、让我谈谈面向对象是怎样理解的?2、谈谈类、子类的联系和区别。3、谈谈继承、多态、封装、抽象、重载、虚函数、抽象类。4、VC++中的MFC的理解,对MFC的理解程度?答:我对MFC有一定的了解,因为里面的指针应用太过与复杂,我只是对里面的几个类如:视图类、文挡类,做了简单的介绍。接着面试官就给我说学VC怎么能不理解MFC呢,他大体的介绍了里面的内容,并嘱咐我接下来的时间一定要抓紧这方面的学习。5、数据库学的怎么样?学的是什么数据库?答:我说学的是关系型的数据库,以SQLSERVER为主。首先,问我对一条记录有几种操作方式。我回答是:查询、插入、删除、更新。其次、有问了问里面的一些具体关键字的应用,例如:having.in.withcheckoption.等等6、为什么学习.net而不学习java?答:我说上个学期,学校开了C#对这门语言产生了很浓的兴趣,所以四月份报名的时候就选择的.net方向。如果是java在先的话,我可能就选择了java。接着,面试官说大型的项目都是用java开发的,要我以后向这方面靠一靠。7、为什么选择国内解决方案?对这方面了解多少?对当今软件的发展有什么看法(外包、国内)?大体上就问了这么多,首先是面试管不是我想象中的那么严肃,感觉就好象金澄老师一样,让人感觉就像是自己的大哥在和自己说话,所以整个过程中没有紧张。每个公司的面试都各不相同,东软面试的问题同样具有一定的深度、广度。1.final怎么用?答:final可以用在定义变量、方法以及类。final的变量必须要初始化,也可以将初始化的操作推到类的静态块中进行,而且这样的变量不能再被重新赋值,可以将其看成这个类的“常量”了。final的方法不能被所在的类的子类重写。final的类不能再被继承了。2.那么,finally怎么用?答:finally适合try、catch块配合使用的。finally一般放一些收尾的代码,也就是说,不管try块中的代码是否正常执行,也不管catch块中的代码是否工作了,finally中的代码都要执行。比如,JDBC或是Hibernate中的关闭连接操作,就是放在finally中执行的。3.wait方法和sleep方法的区别?答:他们都是用来堵塞、挂起当前线程的方法,大体上应该是wait方法可以释放原先占有的资源,而sleep方法好像不能...在以前的编写的代码中,我几乎没有用过控制线程的操作,这部分知识我确实不敢随便说。4.Java中,是否有内存泄漏问题?答:为什么会有“内存泄漏问题”呢,主要是以前的一些编程语言,如C、C++等,因为存在指针变量,而且这些指针是可以进行运算的,所以可能会产生“内存泄漏问题”。对于Java来说,尽管声称废除了指针,但是每个类的实例的引用就是一种“指针”,然而这些引用是不支持运算的,也就不存在内存地址混乱问题,所以应该没有“内存泄漏问题”。5.Java虚拟机的垃圾回收机制,是否真的不会有问题?答:一个类的实例,如果长时间不用了,就可能被虚拟机垃圾回收掉。但是具体的被回收的时间的长短、具体什么时刻能被回收是不确定的。一般情况下,如果虚拟机认为当前可以使用的内存空间不多的时候,就会进行垃圾回收。据我现在的知识,认为,虚拟机的垃圾回收机制应该不会产生问题。6.在平常的代码编写的过程中,有没有测试?一般怎样进行?答:我平常写代码,也写一些测试程序,一般是使用JUnit,对编写的DAO类进行各种功能操作,如保存、删除、添加等的测试.(他又补充问道:你这是小部分的测试,我指的是“单元测试”)我平常写的差不多就是这类的简单测试了,还没有写一个功能强大的、有较大实际使用价值的“单元测试”。7.你在代码中,都是怎样对待异常情况的?答:在绝大多数情况下,我都回知道哪些代码可能会抛出异常以及会抛出什么样的异常。所以我也会针对不同类型方面的异常
本文标题:东软面试试题(B)
链接地址:https://www.777doc.com/doc-2782194 .html