当前位置:文档之家› 后端面试题(高级开发)

后端面试题(高级开发)

后端面试题(高级开发)
后端面试题(高级开发)

面试题

一、Java

1、请列出3个以上常见的exception并用java实现产生

exception对应的代码?

2、接口和抽象类的区别

3、说明下“https://www.doczj.com/doc/f317359183.html,ng.OutOfMemoryError: PermGen space”和

“https://www.doczj.com/doc/f317359183.html,ng.OutOfMemoryError: Java heap space”怎么产生的,和解决方法?

4、请描述下TCP和UDP,并说明他们的区别?

5、请描述下同步和异步,并说明他们的区别?

6、String a="123";String b="123"; String c=new String("123");

String d=new String("123");

(AABA)

1) a==b A.True B.False

2) a.equals(b) A.True B.False

3) c==d A.True B.False

4) c.equals(d) A.True B.False

请选折输出1、2、3、4对应的值?

7、List l = new LinkedList();

l.add(1);

l.add(2);

l.add(1);

l.add(3);

删除列表l中所有为1的元素,下面三种方式是否正确:

A. l.remove(new Integer(1)) (只能移除一个)

B.for(Integeri:l){

if(i == 1) l.remove(i);

}

(ConcurrentModificationException)

C. Iterator it = l.iterator();

while(it.hasNext()){

if(it.next() == 1) it.remove();

}

(正确)

8、描述jmap,jstack的作用,如果有使用jmap,jstack解决问

题的经历,请简单描述。(加分题)

(答案:都是java内置的性能调试工具,jmap用来查看堆内存使用状况,jstack主要用来查看某个Java进程内的线程堆栈信息)

二、线程题

1、说明死锁的产生原因和解决方式

2、说明Synchronized的使用场景

3、有如下servlet,甲乙两人访问该servlet会得到几种结果,分

别是什么?

public class TestServlet extends HttpServlet {

private int a = 1;

public void doGet(HttpServletRequest request, HttpServletResponse response){

a = a + 1;

PrintWriter out = response.getWriter();

out.print(a);

}

}

三、算法题

1、有一个链表X,如果不知道头指针,现在需要删除链表中的一

个已知节点Xn(既不是头也不是尾),请用伪代码实现?2、有一个整型数组A,超过一半的元素都是同一个数字,如何最

快速的找出该数字,请用伪代码实现

四、数据库

1、用数据库连接池有什么好处?并描述其工作原理?

2、请分别描述下数据的水平切分和垂直切分,以及这两种数据切

分方式的使用场景?(加分题)

3、请说明数据库中索引的工作方式

五、Linux

1、请列出你经常使用命令并举例描述基本用法?

2、如何快速查看进程的cpu和内存使用情况?

3、有日志a.log有如下内容:

a1|113|114

b1|222|222

a1|113|222

请使用linux命令过滤出“b1”对应的行?

4、还是上面的日志a.log,请使用命令过滤出“a1”行中第三列值大

于200的行?(加分题)

六、JavaScript

1、JavaScript创建对象及对象方法的几种方式。

2、实现一个简单的Hashtable,包括基本方法:get、put、remove。

Web前端开发笔试题集锦(已读)

Web前端开发笔试题集锦 HTML/CSS篇 1, 判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20 var reg = /^[a-zA-Z][a-zA-Z_0-9]{4,19}$/; reg.test("a1a__a1a__a1a__a1a__"); 2,截取字符串abcdefg的efg var str = "abcdefg"; if (/efg/.test(str)) { var efg = str.substr(str.indexOf("efg"), 3); alert(efg); } 3,判断一个字符串中出现次数最多的字符,统计这个次数 //将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数 var str = "abcdefgaddda"; var obj = {}; for (var i = 0, l = str.length; i < l; i++) { var key = str[i]; if (!obj[key]) { obj[key] = 1; } else { obj[key]++; } } /*遍历这个hash table,获取value最大的key和value*/ var max = -1; var max_key = ""; var key; for (key in obj) { if (max < obj[key]) { max = obj[key]; max_key = key; } } alert("max:"+max+" max_key:"+max_key); 4,IE与FF脚本兼容性问题 (1) window.event: 表示当前的事件对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象 (2) 获取事件源

前端工程师面试问题

前端工程师面试问题 Web前端开发工程师,主要职责是利用 (X)HTML/CSS/JavaScript/DOM/Flash等各种Web技术进行产品的界面开发。制作标准优化的代码,并增加交互动态功能,开发JavaScript以及Flash模块,同时结合后台开发技术模拟整体效果,进行丰富互联网的Web 开发,致力于通过技术改善用户体验。 ★你用微博吗? →如果用,你都关注那些人? ★你用Github吗? →如果用,你关注的项目有什么? ★你关注的 ___有那些? ★你使用那些版本管理系统,比如Git,SVN等? ★你常用的开发环境是怎样的?比如操作系统,文本器,浏览器,及其他工具等。

★你能描述一下你制作一个网页的工作流程吗? ★你能描述一下渐进增强和优雅降级之间的不同吗? →如果提到了特性检测,可以加分。 ★请解释一下什么是语义化的HTML? ★你更喜欢在哪个浏览器下进行开发?你使用那些开发人员工具? ★你如何对网站的文件和资源进行优化?期待的解决方案包括:·文件合并 ·文件最小化/文件压缩 ·使用CDN托管 ·缓存的使用 ·其他

★为什么利用多个域名来存储网站资源会更有效? →浏览器一次可以从一个域名下做多少资源? ★请说出三种减低页面加载时间的方法。(加载时间指感知的时间或者实际加载时间) ★如果你接到了一个使用Tab来缩进代码的项目,但是你喜欢空格,你会怎么做? ·建议这个项目使用像EditorConfig (editorconfig) 之类的规范 ·为了保持一致性,转换成项目原有的风格 ·直接使用VIM的retab命令 ★请写一个简单的幻灯效果页面 →如果不使用JS来完成,可以加分。 ★你都使用那些工作来测试代码的性能?

前端工程师面试题题及答案(全面综合)

1. 要动态改变层中内容可以使用的方法有(AB ) a)innerHTML b)innerText c)通过设置层的隐藏和显示来实现 d)通过设置层的样式属性的display属性 2. 在javascript里,下列选项中不属于数组方法的是(B); a)sort() b)length() c)concat() d)reverse() 3 、var emp = new Array(3); for(var i in emp) 以下答案中能与for循环代码互换的是: (选择一项)。(D ) A for(var i =0; i

c)getElementsByName() d)bgColor() 6. 、display属性值的常用取值不包括(C ) a)inline b)block c)hidden d)none 7. 以下有关pixelTop属性与top属性的说法正确的是。(D ) a)都是Location对象的属性 b)使用时返回值都是字符串 c)都是返回以像素为单位的数值 d)以上都不对 8. 使用open方法打开具有浏览器工具条,地址栏,菜单栏的窗 口,下列选项正确的是__D__ a)open("x.html","HI","toolbas=1,scrollbars=1,status=1"); b)open("HI","scrollbars=1,location=1,status=1"); c)open("x.html","status=yes,menubar=1,location=1"); d)open("x.html","HI","toolbas=yes,menubar=1,location=1"); 9. 、javascript中表达式parseInt(“X8X8”)+paseFloat(‘8’)的结果是什么?( C) a)8+8 b)88 c)16 d)“8”+’8 10. 关于setTimeout(“check”,10)中说法正确的是( D)

大数据工程师面试题

大数据工程师面试题 大数据工程师面试,对于很多人来说应该都不陌生了吧,虽说大数据就业前景很好,但想要成功进入名企,并不是一件容易的事情,不仅仅需要专业的技能,还需要你在面试的时候认真准备一下。面试的时候,我们会遇到各种各样的问题,千锋讲师今天就先讲解一下面试经常会遇到的问题,Hadoop是如何工作的? Hadoop是一个分布式文件系统(Hadoop Distributed File System),简称HDFS。Hadoop是一个能够对大量数据进行分布式处理的软件框架,以一种可靠、高效、可伸缩的方式进行数据处理。所以说Hadoop解决了大数据如何存储的问题,因而在大数据培训机构中是必须学习的课程,也是面试中面试官非常注重的一个技术点。 Hadoop是如何工作的? Hadoop是从Google文件系统发源而来,并且他是一个用Java开发的跨平台的应用。核心组件有: Hadoop Common,拥有其他模块所依赖的库和基础

工具,Hadoop分布式文件系统(HDFS),负责存储,Hadoop YARN,管理计算资源,和Hadoop MapReduce,负责处理的过程。 Hadoop把文件拆成小块并且把他们分发给集群中的节点。然后,它使用打包的代码分发到节点上并行处理数据。这意味着可以处理数据的速度会比使用传统的体系结构的更快。 一个典型的Hadoop集群都会有主节点和从节点或者叫工作节点。主节点有一个任务跟踪器,任务调度,名字节点和数据节点组成。从节点通常作为一个数据节点和任务调度器,不过特殊的场景下程序可能只有数据节点然后在其他的从节点进行处理计算。 在大的Hadoop集群中,通常会使用一个专用的名字节点来管理HDFS节点的文件系统索引信息,这防止了文件系统的数据丢失和损坏。 千锋教育拥有一支的强师队伍,在教学研究方面,我们老师不断的推陈出新,探索更新的教学方式,结合时代所需不断更新课程大纲,加强学生对于知识的理解和运用。千锋讲师对于大数据行业时刻保持一定的敏感性和前瞻性,定期与各大企业的技术官交流分析,掌握大数据的发展动向,不仅仅可以帮助同学们更好的学习大数据技术,还会预测一些大数据工程师面试题,为同学们的就业之路披荆斩棘。 关键词:大数据工程师面试题

前端开发的面试题

前端开发的面试题 web前端面试题 以下是收集一些面试中经常会遇到的经典面试题以及自己面试过程中无法解决的问题,通过对知识的整理以及经验的总结,重新巩固自身的前端基础知识。 1.对WEB标准以及W3C的理解与认识 标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外链css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,容易维护、改版方便,不需要变动页面 内容、提供打印版本而不需要复制内容、提高网站易用性; 2.xhtml和html有什么区别 HTML是一种基本的WEB语言,XHTML是一个基于XML的置标语言 最主要的不同: XHTML 元素必须被正确地嵌套。 XHTML 元素必须被关闭。 标签名必须用小写字母。 XHTML 文档必须拥有根元素。 3.Doctype? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义? 用于声明文档使用那种规范(html/Xhtml)一般为严格过度基于框架的html文档 加入XMl声明可触发,解析方式更改为IE5.5 拥有IE5.5的bug 4.行内元素有哪些?块级元素有哪些?CSS的盒模型? 块级元素:div p h1 h2 h3 h4 form ul 行内元素: a b br i span input select Css盒模型:内容,border ,margin,padding 5.CSS引入的方式有哪些? link和@import的区别是?

内联内嵌外链导入 区别:同时加载 前者无兼容性,后者CSS2.1以下浏览器不支持 Link 支持使用script改变样式,后者不可 6.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高? 标签选择符类选择符 id选择符 继承不如指定 Id>class>标签选择 后者优先级高 7.前端页面有哪三层构成,分别是什么?作用是什么? 结构层 Html 表示层 CSS 行为层 js 8.css的基本语句构成是? 选择器{属性1:值1;属性2:值2;……} 9.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? Ie(Ie内核) 火狐(Gecko) 谷歌(webkit) opear(Presto) 10.写出几种IE6 BUG的解决方法 1.双边距BUG float引起的使用display 2.3像素问题使用float引起的使用dislpay:inline -3px 3.超链接hover 点击后失效使用正确的书写顺序 link visited hover active 4.Ie z-index问题给父级添加position:relative 5.Png 透明使用js代码改 6.Min-height 最小高度 !Important 解决’ 7.select 在ie6下遮盖使用iframe嵌套

web前端研发工程师笔试题选择题带答案

1. 要动态改变层中内容可以使用的方法有( AB ) a) i nn erHTML b) i nn erText c) 通过设置层的隐藏和显示来实现 d) 通过设置层的样式属性的 display 属性 2. 当按键盘 A 时,使用onKeyDown 事件打印event.keyCode 的结果是(A ) a) 65 b) 13 c) 97 d) 37 3.在javascript 里,下列选项中不属于数组方法的是( B ); a) sort() b) l e ngth() c)con cat() d) r everse( ) 4.下列哪一个选项可以用来检索被选定的选项的索引号 ?(B) a)disabled b) selectedl ndex c) opti on d) multiple 5.希望图片具有”提交”按钮同样的功能,该如何编写表单提交?(A ) 6. 使div 层和文本框处在冋一行的代码正确的是 (D ); a) b) c) d) 7. 下列选项中,描述正确的是(选择两项)。(AD ) a)options.add(new Option(,a?,'A?))可以动态添加一个下拉列表选项 b)option.add(new Option(,a?,'A?))可以动态添加一个下拉列表选项 c) n ew Optio n(,a?,'A?)中?a 表示列表选项的值,?A 用于在页面中显示 d) n ew Option(,a?,'A?)中?A 表示列表选项的值,?a 用于在页面中显示 8. 、 var emp = new Array(3); for(var i in emp) 以下答案中能与for 循环代码互换的是:(选择一项)。(D ) A for(var i =0; i

大数据hadoop面试题-企业项目实战

大数据hadoop面试题-企业项目实战 大数据技术逐渐被企业所重视,其带来的益处其实是可以被无限放大的,要知道,现在的市场都是,得数据者得天下!而数据的获得还是要靠大数据技术的,Hadoop作为大数据技术的一个重要技术点,在面试大数据工程师的时候是肯定要被问及的,千锋小编整理一些关于大数据Hadoop的面试题,预祝每一位大数据工程师都能找到自己理想的工作。 1、在Hadoop中定义的主要公用InputFormat中,默认是哪一个?(A) A、TextInputFormat B、KeyValueInputFormat C、SequenceFileInputFormat 2、下面哪个程序负责HDFS 数据存储?(C) https://www.doczj.com/doc/f317359183.html,Node B.JobTracker C.DataNode

D.SecondaryNameNode E.tasktracker 3、HDFS 中的block 默认保存几份?(A) A.3 份 B.2 份 C.1 份 D.不确定 4、下列哪个程序通常与NameNode 在一个节点启动?(D) A.SecondaryNameNode B.DataNode C.TaskTracker D.JobTracker 解析:hadoop的集群是基于master/slave模式,namenode和jobtracker 属于master,datanode和tasktracker属于slave,master只有一个,而slave 有多个. SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和NameNode 运行在不同的机器上。 JobTracker对应于NameNode,TaskTracker对应于DataNode. DataNode和NameNode是针对数据存放来而言的.JobTracker和TaskTracker是对于MapReduce执行而言的. mapreduce中几个主要概念,mapreduce 整体上可以分为这么几条执行

Web前端开发工程师面试题

一、CSS (1) 二、HTML (3) 三、jquery (3) 四、综合 (4) 一、C SS 1.CSS样式表根据所在网页的位置,可分为?(B ) A.行内样式表、内嵌样式表、混合样式表 B.行内样式表、内嵌样式表、外部样式表 C.外部样式表、内嵌样式表、导入样式表 D.外部样式表、混合样式表、导入样式表 2.对于标签,其中*代表(C ) A. 注释的时候才用上 B. 没有这个标签 C. 通配符,意思是所有的标签 3.在CSS中下面哪种方法表示超链接文字在鼠标经过时,超链接文字无下划线?(B ) A. A:link{TEXT-DECORATION: underline } B. A:hover {TEXT-DECORATION: none} C. A:active {TEXT-DECORATION: blink } D. A:visited {TEXT-DECORATION: overline } 4.下面代码片段,说法正确的是:(B ) .DIV1 { position:absolute; line-height:22px; height:58px; background-color: #FF0000; } A. Line-height:22px;修饰文本字体大小 B. position:absolute;表示绝对定位,被定位的元素位置固定 C. height:58px; 表示被修饰的元素距离别的元素的距离 D. background-color: #FF0000; 表示被修饰的元素的背景图像 5.用CSS设置DIV的左边为红色实线,下面设置正确的是(C ) A.style=”border-top: #ff0000 1 solid;”

前端面试题第二套

1)display:inline兼容所有的浏览器。请判断这句话的正确与否。 T F 2)从四个选项选出不同的一个。 a.