1堆和栈那个是对程序员透明的?
答案:栈。
2请结合具体实例阐述一下面向对象中"多态"的概念。
答案:同一操作用于不同的类的实例,不同的类将进行不同的解释, 最后产生不同的结果,它有两种:
t编译时多态----通过overload来实现,系统在编译时,根据传递 的参数和返回的类型等信息决定实现何种操作
t运行时多态----通过override来实现,根据运行时具体对象的类 型决定调用哪个方法。
给我面试的人很有亲和力,我没有感到有压力。
首先是自我介绍;他根据你自己介绍的情况来问你问题,我主要是
说得现在正在做的青软实训内部管理系统。
你在项目组里主要负责什么?是怎么做的?
主要负责页面前台展示,我现在设计页面框架,用的 Struts-tile;把页
面分为 4 咅B分,sidebar,header,footer,c on tex然 后把 sidebar,header,footer
这些每个页面都要用的写成一个整体, 放在配置文件中,每个页面都 引用他,这样就不用变了。变得就是 con text部分。另外在sidebar里 面,用javascript来实现导航栏的弹出功能。
用什么方法可以检测一个环行链表?
首先可以在 data 里面初始化一个数据,然后向下循环,可以找到这 条数据的话,就是环行链表,否则就不是; 但这个链表不一定是完全的链表,里面可能有分支,该怎么检测? 设置一个循环,条件设为true,如果可以结束就不是,不能结束里面 就有环。
那这样的话怎么让他跳出循环呢? 我也不知道,那请教一下吧。
你看看如果next引用如果相同的话是不是就是环行链表? 对,是那你想个办法来实现他吧。
把这个next引用,写进一个list,以后都把next引用和list里面的内 容进行比较,如果有相同的就是环,没有就不是。
但如果链表很大,而你做的是嵌入式项目,有内存溢出,该怎么检测 呢?
呵呵, 我想不出来了。
1.
2. 自我介绍,(注 自我介绍中的自我经历可能会成为他的考点)
3. 我在自我介绍中说了我参加过数学建模, 他问了我我们建的什 么模型,我给他介绍了一下。主要考点是你的思路问题。
4. 单链表若最后一个节点指向前面的某个节点, 请问怎么检测出
现了环? 主要是考察你对问题有无解决方案,不对也无所谓,最后他一 定会把你难倒。怎么也要说上几句,不说那就 over 了。
5.Fi nal 和 fin ally 的区别?
6.Java的垃圾回收机制?
4 5 两题应该都会,我就不说了。
1。 什么是 J2EE,J2SE,J2ME
这个就不用说了吧
2。 什么是 EJB
也不用说了吧
3。 你做过哪些项目,负责该项目的哪个模块, M V还是C
我说我做过一个网上花店,负责管理员模块,然后简单说了一
下这个模块的各项功能,他让我说是 M V还是C,我说这个项目的 目的之一是让我门每个人对整个流程都有所锻炼,所以没有谁只做 M 或者V或者C, 一个人负责一个模块,然后做这个模块的全部。
4。 我说我学到STRUT了,他问我ACTION和ACTIONFOF是什么关系, 是一对一吗,是一个 ACTION一个ACTIONFORM,确定吗?
我说是的,确定一定以及肯定。因为一个ACTION标签里只有一 个NAMES性(他说这个我知道)。
5。 学过日语啊,说个句子你翻译一下吧, @#$%#%$...
我也 @#$#@%$#%然...后他说“恩,还懂点日语皮毛,学起来应 该快一些。”
技术上也就这些了,别的也没什么了,不知道为什么就问我这些,我 准备的那些他一个也没问着,可能我一开始说我正在学 J2EE把他
引向了这个方向,或者是我回答的太快了,时间太紧了。就这些。
东软面试总结:
1.问题:栈和队列的主要区别
答案:栈 后进先出;
队列 先进先出。
2.问题:完全二叉树的结构
答案:深度为k,有n个节点的二叉树,当且仅当其每一个节点 都与深度
为k的满二叉树中编号从1至n的结点 对应时,称之为完全
二叉树。
当初面试人员画了几个树让我辨认谁是完全二叉树。
3.问题:什么是索引
答案:索引依附于基表,建立索引是加快查询的有效手段。
4. 问题:什么是视图 | ||
答案:视图是关系数据库系统提供给用户以多角度观察数据库中 | ||
数据的重要机制。是从一个或多个基表(或视图)导出的表,它 | ||
与基本表不同,是虚表。 | ||
5. 问题:什么是游标 | ||
答案:游标是系统为用户开设的一个数据缓冲区,存放 SQL语句
的执行结果,每个游标区都有一个名字。用户可以通过游标逐一 获取记录,并赋给主变量,交由主语言进一步处理。
6.问题:对数据库操作的语句
答案:select, insert, update, delete
7.问题:数据库的操作过程
答案:(1)加载驱动程序;(2)建立数据库连接;(3)向数据库 发送SQL语句;(4)事务处理;(5)管理连接。
8 问题:所知道的排序方法的种类
答案:插入,快速,选择,交换,归并,基数,希尔等。
9. 问题:什么是MVC
答案:这个大家都清楚,可查询有关资料。
1。 首先得问题就是让我做自我介绍
答 当然就自己的大致情况说就行了,在这个过程中 又让我分析 自己的性格与优缺点。然后让说明自己的职业规划。这些都是因自己 而定了
2。 做过的项目 简单介绍一下
答:做过的项目在来软件园之前没有多少机会 只有课程设计的时候 做过一个java聊天室的项目,然后来到软件园之后做过 jsp的产品 支持中心的例子,sruts的固定资产管理的例子,还有hibernate 的 例子,(可惜我都忘了竟然忘了那个项目的名字了,就是留言板的那
个,刚做完竟然忘了)。随后她又随便问我关于 java聊天室是不是 自己编协议实现的,当然没有。 随后让我讲一个项目,我就讲
了那个关于struts的项目。因为对方不懂struts,我讲也不知道她 听懂了没有。
3。 问你几个c语言的问题,
char *p ; int i ; 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 语句是在 sql server 里写的还是在程序里
写的?
答:学数据库的时候,是在sql server里,
也在程序里写。
问:存储过程有没有用过 答:在个人网站里,用到过。
4.网络:
问:有没有socket编程的经验。
答: 在大三做过网络五子棋。
5.架构:
问 :三层架构 :是什么 ?
正确答案: (web 服务器,数据库服务器,应
用程序服务器)
6.编程语言 :
问:Java学的怎么样?答:学了一个学期的课程 问:C或C++挑一个你最好的。答:C++ C++ :问:面向对象的特点:解释一下什么继承, 多态。
答 :我在回答的时候, 是通过一个经典的 例子说的。
7.你的项目经验 :
问:是用什么开发的 ? 答: asp
8. 日语基础: 写一下五十音图 ,说一个存在句,说一 个判断句,说一个你学过的最复杂的句子。
首先,面试官对整个试卷的成绩做个一个评价。我的编程做了一个 java 和一个 c 语言的。面试官问我这两门语言那一门更熟悉, 我说 我是 .net 班的,相对来说对 C 语言相对熟悉一些。他接着问我什 么时候学的 C 语言,我说大一下学期,他问以后用的多吗?我说: 大二以后就不用了, 因为 C 的编程环境太单调了, 以后我们就用 C++ 代替了 C 语言。接着,面试官就以 VC++ 为切入点问我。问题可以 分为以下几个:
1、 让我谈谈面向对象是怎样理解的?
2、 谈谈类、子类的联系和区别。
3、谈谈继承、多态、封装、抽象、重载、虚函数、抽象类
4、VC++ 中的 MFC 的理解,对 MFC 的理解程度?
答:我对 MFC 有一定的了解,因为里面的指针应用太过与 复杂, 我只是对里面的几个类如:视图类、文挡类,做了简单的 介绍。接着面试官就给我说学 VC 怎么能不理解 MFC 呢,他大 体的介绍了里面的内容, 并嘱咐我接下来的时间一定要抓紧这方面的 学习。
5、数据库学的怎么样?学的是什么数据库?
答:我说学的是关系型的数据库,以 SQLSERVER^主。首先, 问我对一条记录有几种操作方式。我回答是:查询、插入、删除、更 新。其次、有问了问里面的一些具体关键字的应用, 例如: having. in. with check option. 等等
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中的关闭连接操作,就是放在fin ally 中执行
的。
3.wait 方法和 sleep 方法的区别? 答:他们都是用来堵塞、挂起当前线程的方法,大体上应该是 wait 方法可以释放原先占有的资源,而 sleep 方法好像不能 ... 在以前 的编写的代码中, 我几乎没有用过控制线程的操作, 这部分知识我确 实不敢随便说。
4.Java 中,是否有内存泄漏问题?
答:为什么会有“内存泄漏问题”呢, 主要是以前的一些编程语言, 如C C++等,因为存在指针变量,而且这些指针是可以进行运算的, 所以可能会产生“内存泄漏问题”。对于 Java 来说,尽管声称废除 了指针,但是每个类的实例的引用就是一种“指针”, 然而这些引用 是不支持运算的, 也就不存在内存地址混乱问题, 所以应该没有“内 存泄漏问题”。
5.Java 虚拟机的垃圾回收机制,是否真的不会有问题? 答:一个类的实例,如果长时间不用了,就可能被虚拟机垃圾回收
掉。但是具体的被回收的时间的长短、 具体什么时刻能被回收是不确 定的。一般情况下, 如果虚拟机认为当前可以使用的内存空间不多的 时候,就会进行垃圾回收。据我现在的知识,认为,虚拟机的垃圾回 收机制应该不会产生问题。
6.在平常的代码编写的过程中,有没有测试?一般怎样进行? 答:我平常写代码,也写一些测试程序,一般是使用 JUnit ,对编
写的DAC类进行各种功能操作,如保存、删除、添加等的测试.
(他又补充问道:你这是小部分的测试,我指的是“单元测试”) 我平常写的差不多就是这类的简单测试了, 还没有写一个功能强大 的、有较大实际使用价值的“单元测试”。
7.你在代码中,都是怎样对待异常情况的?
答:在绝大多数情况下,我都回知道哪些代码可能会抛出异常以及 会抛出什么样的异常。所以我也会针对不同类型方面的异常区分对 待。我一般会分成几类情况:一类是服务器崩溃等情况,是最严重的
异常了,没有什么可以挽救的余地,返回给用户“服务器维护中,暂
时无法使用”;一类是数据库操作失败等情况,比如 JDBC连接数据 库失败、 Hibernate 正常删除数据失败等,是属于意外情况,严重程 度稍微低一些,返回给用户“刚才由于网路不畅,导致操作失败,请 重新操作”, 同时,需要回滚的及时回滚; 再一类在实现有所准备的、 业务操作异常的情况, 比如登录密码错误、 新用户注册重名现象等等, 这些异常都是在意料之中、有所准备的。此时可以返回相关的提示, 严重程度相对比较的低。
8.说一下数据库表设置多个外键的事情 答:我以前设计的数据库表, 还没用多个外键的情况 . 从外键的定义
上说,一个表设置多个外键是完全可以的, 外键对应着相关表的主键, 内容只能是对应的主键的值。 如果对应的主键发生变化, 那么就要按 照当时定义外键时制定的规则对外键所在的纪录条进行保留、 删除或 是更新操作。
9.谈谈对CMM勺认识
答:CMM是一种开发的模式,正好我们做的一个项目就是按照 CMM3
勺基本要求做勺。 因为以前勺时候都是采用类似“快速”开发一样勺 方式,还快就会开始编码,但是 CMM要求每一步都要事先有一份完 整的文档,所以一开始,对这种整天只写文档,不写代码的模式不太 适应。随着项目的不断进行,才觉着 CMM的这种开发模式有许多的 优点和好处。 每做一步都有上一步的文档的支持, 保证了工作的一致 性和完整性。同时,因为是在统一的文档进行的工作,较容易了解的 项目的进展情况,便于对项目的监控。
10.别人的进度拖延了,影响到了你的进度,这种事情在实际情况下 经常有,你怎么处理?
答:我会直接找到这位(些)同事,了解情况,看看我是否能帮得 上忙。如果帮不上,问一下什么时候能够结束,调整一下自己的工作 安排,先做其它的一些和他们的进度联系不大的东西。 都是自己项目 组的同事,应该很好协调。
(如果是,别的项目组的进度影响到你呢?)
如果是别的组的人, 自己就不好直接找人家, 我会和项目组长说。 如果事情紧急,让项目组长带着我,我们一起与那个项目组进行沟通。
通过东软面试官所提的这些问题可以看出, 他们是从知识、 能力和意 识三个方面对面试者进行考查的。
1.知识类问题,比如 final 和 finally 、 wait 和 sleep 等问题, 考察的就是基础知识,是什么就是什么,没有可以解释的余地。对于 这类的问题,只有靠自己的认真学习,才能答好。
2.能力类问题,比如内存泄露、垃圾回收、对待异常等问题,能 回答的非常完美当然很好, 但我们现在的所学能回答准确不好办。 所 以我认为,这类问题不能简单的回答“是”“不是”“能”“不 能”,应该把思考的思路表现给面试官,只要认可了我的思路,也就 基本的认可了这方面的能力了。
3.意识类问题,比如对CM啲认识、工作协调等问题,主要看对 某些方面认识有多深, 我认为能结合着自己的经历谈, 再加上阐述合 理,较容易得到面试官的认可。
SSH, java 基础, oracle
线程、 Socket 、 Servlet 、 Jsp 等 j2SE、 javaWeb
谈JAVA的多态,说一下STRUTS勺基本应用
笔试 专业知识 java 数据库基础知识 面试 java 理论 左链接右链接, decode 的用法, sendredirect 和 forward 的区别(这 个我没回答上来,汗), servlet 的生命周期, doget 和 dopost 的区 别
如何解析 xml int 与 integer 的区别 javascript 如何 debug collectio 和 collections
map
jsp 链接数据库
sql 语句大全
cooki 和 session
final finally finallize run Runnable
垃圾回收机制
本文来源:https://www.2haoxitong.net/k/doc/11aa2696f58a6529647d27284b73f242336c31bf.html
文档为doc格式