`
cutesunshineriver
  • 浏览: 195808 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

最近遇到的几个面试题

阅读更多
一、面向对象的三大特征。
继承、封装、多态。

封装
封装机制将数据和代码捆绑到一起,避免了外界的干扰和不确定性。它同样允许创建对象。简单的说,一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。
在一个对象内部,某些代码和(或)某些数据可以是私有的,不能被外界访问。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。

继承
继承是可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按级分类的概念。例如,知更鸟属于飞鸟类,也属于鸟类。这种分类的原则是,每一个子类都具有父类的公共特性。

多态
多态是OOP的另一个重要概念。多态的意思是事物具有不同形式的能力。举个例子,对于不同的实例,某个操作可能会有不同的行为。这个行为依赖于所要操作数据的类型。比如说加法操作,如果操作的数据是数,它对两个数求和。如果操作的数据是字符串,则它将连接两个字符串。就像某个单词在不同的上下文中具有不同的含义。


二、接口和抽象类的区别
区别一,两者表达的概念不一样。抽象类是一类事物的高度聚合,那么对于继承抽象类的子类来说,对于抽象类来说,属于“是”的关系;而接口是定义行为规范,因此对于实现接口的子类来说,相对于接口来说,是“行为需要按照接口来完成”。

区别二,抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。

区别三,继承类对于两者所涉及方法的实现是不同的。继承类对于抽象类所定义的抽象方法,可以不用重写,也就是说,可以延用抽象类的方法;而对于接口类所定义的方法或者属性来说,在继承类中必须要给出相应的方法和属性实现。

区别四,在抽象类中,新增一个方法的话,继承类中可以不用作任何处理;而对于接口来说,则需要修改继承类,提供新定义的方法。


三、实现多线程有几种方法?
多线程有两种实现方法。一种是继承Thread类,一种是实现Runnable接口!


四、Spring有哪七大模块?
1 Spring--Core 模块(反向控制inversion of Control)(依赖注入 DI(dependency injection))
2 Spring--AOP 模块
3 Spring--ORM 模块
4 Spring--DAO模块
  Dao模块提供对jdbc的支持,对jdbc进行了封转,允许jdbc使用Spring资源,并能统一管理jdbc的事务。
5 Spring--Web模块
  web模块提供对Struts WebWork JSF 等各种web框架的支持,Spring能管理这些框架,将spring 的资源如数据源,bean 等注射给框架也能在执行框架方法前后插入spring的拦截器
6 Spring--Context模块
  Context 模块提供框架式 bean访问模式,其他程序通过Context访问Spring 的bean资源,类似于JNDI
7 Spring--Web MVC模块
  开发者可以选择Struts作为mvc框架,也可以使用Spring自带的mvc框架,Srping MVC 与struts等框架相比,更加简洁,灵活。


五、JSP中的四种作用域。
作用域规定的是变量的有效期限。

1、如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。
从把变量放到pageContext开始,到jsp页面结束,你都可以使用这个变量。

2、如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。

所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。

3、如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话。

所谓当前会话,就是指从用户打开浏览器开始,到用户关闭浏览器这中间的过程。这个过程可能包含多个请求响应。也就是说,只要用户不关浏览器,服务器就有办法知道这些请求是一个人发起的,整个过程被称为一个会话(session),而放到会话中的变量,就可以在当前会话的所有请求里使用。

4、如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。

整个应用是指从应用启动,到应用结束。我们没有说“从服务器启动,到服务器关闭”,是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上面所有的应用都关闭了。

application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。

与上述三个不同的是,application里的变量可以被所有用户共用。如果用户甲的操作修改了application中的变量,用户乙访问时得到的是修改后的值。这在其他scope中都是不会发生的,page, request, session都是完全隔离的,无论如何修改都不会影响其他人的数据。


六、JSP中forward和redirect有什么区别?
forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。

redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址。
分享到:
评论

相关推荐

    互联网校招题库资料笔试面试真题具体面试问题回答技巧腾讯阿里培训资料.zip

    ava工程师面试题大全-100%公司笔试题你都能碰到几个.docx Java开发工程师上机笔试题.docx Java开发求职面试题.docx Java开发笔试题.docx Java数据结构类面试题.docx Java数据结构题.docx Java笔试面试宝典.docx Java...

    Android+Java面试题

    里面收集几个大公司的面试题,还有一些本人参加面试遇到的技术点,收集起来的面试题,包含安卓和Java,还是很多的!希望能帮到大家

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料.zip

    java工程师面试题大全-100%公司笔试题你都能碰到几个.docx Java开发工程师上机笔试题.docx Java开发求职面试题.docx Java开发笔试题.docx Java数据结构类面试题.docx Java数据结构题.docx Java笔试面试宝典.docx ...

    JAVA面试题最全集

    5.j2me程序的必需的几个部分 6.c/s与b/s的区别 7.构建一个connect pool,然后再调用它, 8.j2ee平台与dotnet平台的区别 9.ejb的life cycle 10.session bean 和 entity bean的区别 11.ejb中的transaction机制 ...

    Java面试笔记 225道Java面试题JAVA面试基础知识点总结Java数据结构题笔试WORD资料汇总(19个).zip

    java工程师面试题大全-100%公司笔试题你都能碰到几个.docx Java开发工程师上机笔试题.docx Java开发求职面试题.docx Java开发笔试题.docx Java数据结构类面试题.docx Java数据结构题.docx Java笔试面试宝典.docx ...

    经常会问的面试题

    HR面试题,教你怎么回答面试中经常会问到的面试题,经典回答。

    java精华面试题200道

    10年程序员从大厂hr拿到的精华200道面试题,只需要把这200道面试题掌握,想去哪里去哪里。 每个技术人都有个大厂梦,我觉得这很正常,并不是饭后的谈资而是每个技术人的追求。像阿里、腾讯、美团、字节跳动、京东...

    java面试题大全(2012版)

    14.航空网的几个航班查询题: 104 15.查出比经理薪水还高的员工信息: 105 16、求出小于45岁的各个老师所带的大于12岁的学生人数 106 17.求出发帖最多的人: 107 18、一个用户表中有一个积分字段,假如数据库中有100...

    高级开发spring面试题和答案.pdf

    面试高级开发的期间整理的面试题目,记录我面试遇到过的spring题目以及答案 目录 spring ThreadLocal的底层对象; 为什么@Service和@Repository放到实现类上面而不是接口类上面; spring 三种注入(就是从spring容器...

    java面试题

    55.3. Servlet执行时一般实现哪几个方法? 38 56. 会话跟踪 39 56.1. Cookie 39 56.2. session 39 56.2.1. Session 生命周期 39 57. EJB的几种类型 39 58. 排序都有哪几种方法?请列举。用JAVA实现一个快速排序。 40...

    朋友们一起收藏的 知名企业的面试题

    和朋友们面试遇到的一些面试题,包括涉及到的知识点。收集的最新几个知名企业的面试题,希望对找工作的朋友有一点帮助。

    高级开发并发面试题和答案.pdf

    面试高级开发的期间整理的面试题目,记录我面试遇到过的并发题目以及答案 目录 并发 常说的并发问题是哪些;资源竞争、死锁、事务、可见性 死锁 如何排查死锁; 产生死锁的必要条件: 如何解决解决死锁; 锁 AQS:...

    分享几道你可能遇到的python面试题

    最近去笔试,在面试过程中遇到了几个编程题,比较基础。所以想着总结一下,所以下面这篇文章主要给大家分享了几道你可能遇到的python面试题,文中给出了详细的示例代码供大家参考学习,需要的朋友们下面来一起看看吧...

    php新手面试题

    前几个题是我个人面试时候遇到后添加上去的,都是基础中的基础,而且非常容易被问到。复杂算法题没有加入,因为一般都会通过书籍学习。

    NLP 算法工程师相关的面试题

    这部分已经开始进入正题了,事实证明,部分大厂会提及一些基础的机器学习算法知识,因此,这部分我觉得几个核心的模型是要会的。 机器学习项目流程 判别模型 vs 生成模型 频率派 vs 贝叶斯派 数据预处理 特征工程 ...

    软件测试面试题合集.pdf

    当应聘者面试软件测试岗位时,以下是一些常见面试题: - 1. 什么是软件测试?为什么软件测试是软件开发过程中必不可少的环节? - 2. 请解释一下什么是黑盒测试和白盒测试,它们有什么区别和应用场景? - 3. 什么是...

    2013java面试题搜集

    25、说出几个你遇到过的异常 26、说一下spring有什么好处?? 27、linux杀死进程的方式: 28、linux中查看当前线程的方式: 29、说出jdbc的具体实现步骤: 30、 你知道事务吗,说一下事务级别: 31、. js...

    IT面试宝典,软件开发、软件测试、题库

    你有面试了十几次却没有一个Offer,在回答了面试官的问题后自以为回答的很好但现实却不尽如人意、抓不住面试官的心。 此软件为您在面试官面前增加自信,能快速提高面试的成功率。 本软件程序对于软件行业面试中...

Global site tag (gtag.js) - Google Analytics