阿里P7整理“硬核”面试文档:Java基础+数据库+算法+框架技术等
现在的程序员越来越多,大部分的程序员都想着自己能够进入大厂工作,但每个人的能力都是有差距的,所以并不是人人都能跨进BATJ。即使如此,但身在职场的我们一刻也不能懈怠,既然对BATJ好奇,那么就要朝这个目标努力下去。以下是阿里在职P7整理出来的最“硬核”的面试文档,文档内容包含的专题非常多,可以免费分享给大家学习。
由于篇幅有限,以下只展示了这份文档的部分题目内容,题目答案也只展示了截图,可能因为压缩问题看不清楚,所以需要完整版的面试问题及答案的小伙伴,这些资料加入我的Java进阶裙:730863136就可以得到(点击群号即可立刻进群)
Java 基础部分
- 一个“java”源文件中是否可以包括多个类(不是内部类) ?有什么限制?
- Java有没有goto?
- 说说&和&&的区别
- 在JAVA中如何跳出当前的多重嵌套循环?
- switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
- shorts1= 1;s1=s1 + 1;有什么错?short s1 = 1;s1+= 1;有什么错?
- char型变量中能不能存贮一个中文汉字?为什么?.
- 用最有效率的方法算出2乘以8等于几? .
- 请设计一个一百亿的计算器
- 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
- "=="和equals方法究竞有什么区别?
- 静态变量和实例变量的区别?
- 是否可以从一个static方法内部发出对非static方法的调用?
- Integer与int的区别
- Math.round(1 1.5)等于多少?Math,round(-11.5)等于多少?
- 下面的代码有什么不妥之处?
- 请说出作用域public, private, protected, 以及不写时的区别
- Overload和Override的区别。Overloaded 的方法是否可以改变返回值的类型?
- 构造器Constructor是否可被override?
- 接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承具(concrete class)?抽象类中是否可以有静态的main方法?
- 写clone()方法时,通常都有一行代码,是什么?
- 面向对象的特征有哪些方面?
- java中实现多态的机制是什么?
- abstract class和interface有什么区别?
- abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
- 什么是内部类?Static Nested Class和Inner Class的不同。
算法与编程
- 编写一个程序,将a.bxt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt 文件中的单词用回车符分隔,b.txt 文件中用回车或空格进行分隔。
- 编写一个程序,将d:java目录下的所有java文件复制到d:jad目录下,并将原来文件的扩展名从java改为jad。
- 编写一个截取字符串的函数,输入为-一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC",4,应该截取“我AB”,输入“我ABC汉DEF",6,应该输出“我ABC",而不是“我ABC+汉的半个”。
- 有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数。
- 说明生活中遇到的二叉树,用java实现二叉树
- 从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序
- 写一个 Singleton 出来
- 递归算法题1
- 递归算法题2
- 排序都有哪几种方法?请列举。用JAVA实现-一个快速排序。
- 有数组a[n],用java代码将数组元素顺序颠倒
- 金额转换,阿拉伯数字的金额转换成中国传统的形式如: (¥1011) -> (一千零一拾一元整)输出
html&JavaScript&ajax 部分
- 判断第二个日期比第一个日期大
- 用table显示n条记录,每3行换-次颜色,即1,2,3用红色字体,4, 5, 6用绿色字体,7, 8, 9用红颜色字体。
- HTML的form提交之前如何验证数值文本框的内容全部为数字?否则的话提示用户并终止提交?
- 请写出用于校验HTML文本框中输入的内容全部为数字的javascript代码
- 说说你用过那些ajax技术和框架,说说它们的区别
Java Web 部分
- Tomcat的优化经验
- HTTP请求的GET与POST方式的区别
- 解释一下什么是servlet;
- 说一说Servlet的生命周期?
- Servlet 的基本架构
- SERVLET API中forward()与redirect()的区别?
- 什么情况下调用doGet()和doPost()?
- Request 对象的主要方法
- request.gettribute()和 request.getParameter()有 何区别
- jsp有哪些内置对象?作用分别是什么?分别有什么方法?
- jsp有哪些动作?作用分别是什么?
- JSP的常用指令
- JSP中动态INCLUDE与静态INCLUDE的区别?
- 两种跳转方式分别是什么?有什么区别?
- 页面间对象传递的方法
- JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
- MVC的各个部分都有那些技术来实现?如何实现?
- 我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
- 现在输入n个数字,以逗号,分开;然后可选择升或者降序排序:按提交键就在另一页面显示按什么排序,结果为,提供reset
数据库部分
- 用两种方式根据部门号从高到低,工资从低到高列出每个员工的信息。
- 列出各个部门中工资高于本部门的平均工资的员工数和部门号,并按部门号排序
- 存储过程与触发器必须讲,经常被面试到?
- 说出一些数据库优化方面的经验?
- union 和union all有什么不同?
- 分页语句
- 用一条SQL语句查询出每门课都大于80分的学生姓名
- 所有部门之间的比赛组合
- 每个月份的发生额都比101科目多的科目
- 统计每年每月的信息
- 显示文章标题,发帖人、最后回复时间
- 删除除了id号不同,其他都相同的学生冗余信息
- 航空网的几个航班查询题
- 查出比经理薪水还高的员工信息
- 求出小于45岁的各个老师所带的大于12岁的学生人数
- 求出发帖最多的人
- 一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决?
- 一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他用户。
- xxx公司的sql面试
- 注册Jdbc驱动程序的三种方式
- 用JDBC如何调用存储过程
- JDBC中的PreparedStatement相比Statement
- 写一个用jdbc连接并访问oracle数据的程序代码
- Class.forName 的作用?为什么要用?
- 大数据量下的分页解决方法
- 用JDBC查询学生成绩单把主要代码写出来(考试概率极大)
- 这段代码有什么不足之处?
- 说出数据连接池的工作机制是什么?
- 为什么要用ORM?和JDBC有何不一样?
流行的框架与新技术
- 谈谈你对Struts的理解。
- 谈谈你对Hibernate的理解。
- AOP的作用。
- 你对Spring的理解。
- 谈谈Struts中的Action servlet。
- Struts优缺点 优点:1.实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现
- STRUTS的应用(如STRUTS架构)
- hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别
- 简述Hibernate和JDBC的优缺点?如何书写-一个one to many配置文件
- iBatis 与Hibernate有什么不同?
- 写Hibernate的一对多和多对一双向关联的orm配置?
- hibernate 的inverse属性的作用
- 在DAO中如何体现DAO设计模式?
- spring+Hibernate中委托方案怎么配置?
- spring+Hibernate 中委托方案怎么配置?
- hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类与之对应如何解决:
- 介绍一下Hibernate 的二级缓存
- Spring的依赖注入是什么意思?给-个Bean 的message属性,字符串类型,注入值为"Hllo"'的XML 配置文件该怎么写?
- 什么是Spring 的 IOC AOP
- spring 与EJB的区别
由于篇幅原因,以上只展示了这些专题的部分真题(截取了重点题),另外还剩一些其他的部分就不一一展示了,剩余部分包括EJB部分、WebService部分以及一些个人常规题等。
面试题答案
这些资料加入我的Java进阶裙:730863136就可以得到(点击群号即可立刻进群)
写在最后
最后想告诉各位一点的是,如果自身的背景不够,那么就要努力去提升自己的背景。很多程序员感叹自己是吃青春饭,过了30岁就感到焦虑,但实际上如果在自己的自身条件过硬的情况下,即使到了一定年纪,也是自信。所以,学习一定别落下,当自己成长到一定阶段,“越老越吃香”这句话就会印证在自己身上,而我相信,你也可以!
最后,还有一些实战文档可以赠送,包括Spring全家桶、Redis实战等等。需要这些实战文档资料,这些资料加入我的Java进阶裙:730863136就可以得到(点击群号即可立刻进群)
posted on 2019-12-06 13:50 我用java改变世界 阅读(264) 评论(0) 编辑 收藏 举报