`
jaesonchen
  • 浏览: 313116 次
  • 来自: ...
社区版块
存档分类
最新评论

java面试题集合

 
阅读更多

 

面向对象的特征有哪些方面  

抽象: 

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 继承: 

继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 封装: 

封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。

 

多态性: 

多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

 

 

 反射,是否可以调用私有方法,在框架中的运用

 

 

 Error、Exception和RuntimeException的区别,作用又是什么?

 

 reader、writer、inputstream、outputstream、inputstreamreader、outputstreamwriter

 

java编码机制

 

 

String s = "aa"+"bb"; 编译器会做什么优化 

String s = "aabb"; 

String s = "aa"+ bb; //bb也是个字符串 ,编译器会做什么优化处理 jdk1.4和jdk1.5分别是  

New StringBuffer().append("aa").append(bb).toString(); //1.4  

New StringBuilder().append("aa").append(bb).toString(); //1.5   

 

 

Object类中有哪些方法  

 

IO和NIO本质不同在实际项目使用场景及如何使用,主要考察NIO使用场景   

 

 

多线程 同步的原理  

启动一个线程是用run()还是start()?  

解释是一下什么是线程安全?举例说明一个线程不安全的例子。解释Synchronized关键字的作用。

 

说出数据连接池的工作机制是什么?解决什么问题  

 

泛型的实现机制

 

排序算法有哪些,优缺点

 

Hibernate/Ibatis,两者的区别,简单的实现, 在性能调优方面都各有什么方式?

Hibernate: session.lock()的含义,session.merge()的含义,session.saveOrUpdate()的含义,session.flush()的含义 

主要考察对hibernate二级缓存和脏数据检查的了解

 

Spring的核心理念是什么? 

 spring 提供了哪两种事物处理方式,采用了java的什么技术 spring提供了编程式事务处理和声明式事务处理。 

spring中的事务处理实际上就是基于动态的aop(面向方面编程)机制实现的。spring在默认情况下会使用java的动态代理机制,因为java的动态代理机制要求其代理的对象必须实现一个接口。并且在该接口中定义准备进行代理的方法。而对于没有实现任何接口的java bean,spring是通过cglib来实现的。 中心接口 :rg.springframework.transaction.platformtransactionmanager. 编程式事务处理:transactiontemplate能够以编程的方式实现事务处理。 声明式事务处理: 

 Spring对多种ORM框架提供了很好的支持,结合事务管理描述在Spring中使用Hibernate或Ibatis的方法。  Spring bean生命周期 

当组合不同的生命周期机制时 - 例如,类层次中使用了不同的生命周期机制 - 开发者必须注意这些机制的应用顺序,下面是初始化方法中的顺序:

 

@PostConstruct元注释  

InitializingBean的afterPropertiesSet()定义  

自定义init()方法配置  

析构方法调用顺序是相同的:  

@PreDestroy元注释  

DisposableBean的destroy()定义  

自定义destroy()方法 

 

Spring 属性注入的实现 

spring AOP解决了什么问题,spring如何实现AOP? 

主要了解应聘人员对spring原理的理解,对AOP的理解,考察反射和cglib的了解。  Spring BeanFactory,FactoryBean的区别 

 Spring的事务管理 ,Spring bean注入的几种方式 

DI的几种方式:接口注入、Setter方法注入、构造方法注入,可展开问下各种DI的适用场景; 

第二点主要考察应试者对spring AOP是否真正研究并使用过,由于具体的声明式事务配置细节可能记不下来,只要能描述出主要的配置情况和命名匹配规则,事务属性的了解即可,也可以根据情况顺便问些动态代理相关的问题; 

 

oracle三层分页实现  sql注入原理  乐观锁,悲观锁 

 数据库操作的性能瓶颈通常在哪里, 1000万级别访问,在数据库和java程序上考虑哪些来进行性能优化  Jdbc中, batchSize, fetchSize的使用 batchSize 更新的数量 

fetchSize 一次从数据库取的数量

JDBC中,statement,prepared statement ,Callable statement的区别是什么? 

Statement 接口提供了执行语句和获取结果的基本方法。PreparedStatement 接口添加了处理 IN 参数的方法; PreparedStatement:对于同一条语句的多次执行,Statement每次都要把SQL语句发送给数据库,这样做效率明显不高,而如果数据库支持预编译,PreparedStatement可以先把要执行的语句一次发给它,然后每次执行而不必发送相同的语句,效率当然提高,当然如果数据库不支持预编译, 

PreparedStatement会象Statement一样工作,只是效率不高而不需要用户工手干预.另外PreparedStatement还支持接收参数.在预编译后只要传输不同的参数就可以执行,大大提高了性能. 防止Sql注入 

 数据库数据文件和索引为什么需要收缩,如何实现收缩 

 性能方面。多数结合多线程、同步来问,以提取一张大表数据来作为例子 解决性能的方法 

 用JDBC定义一个带事务性的数据库操作主要步骤是什么?数据库的事务特性ACID是怎么理解的?项目中数据库设计时范式是怎么考虑的,

主要步骤: 

通过驱动器管理器获取连接接口。  获得Statement或它的子类。  设置Statement中的参数。  执行Statement。  关闭Statement。  关闭连接接口 

可以再问一些批处理的问题,Statement/PrepareStatement的区别等等. 

ACID:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability); 

表关联时,内连接,左连接,右连接怎么理解?  

 

 

Ajax如何解决跨域问题  谈一下servlet的生命周期,是否有线程安全问题,如何解决? 

1、Servlet容器负责加载和实例化Servlet,servlet服务器启动时或者第一次接收servlet请求时。

2、在Servlet实例化之后,容器将调用Servlet的init()方法初始化这个对象。

3、Servlet容器调用Servlet的service()方法对请求进行处理。 

4、当需要释放内存或者容器关闭时,容器就会调用Servlet实例的destroy()方法。在destroy()方法调用之后,容器会释放这个Servlet实例,该实例随后会被Java的垃圾收集器所回收。

servlet在容器中是单实例的即servlet是线程不安全的,不允许在servlet中定义全局的类对象。

 

JAVA SERVLET API中forward() 与redirect()的区别? 

前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法  

 

servlet中,如何定制session的过期时间?  servlet中,filter的应用场景有哪些?  描述JSP和Servlet的区别、共同点。

 

JSP文件的Scriptlets在编译后将被包含于该JSP servlet的service()方法。当JSP引擎处理客户端请求时,JSP Scriptlets在被请求的时候被执行。如果scriptlet产生输出,输出将在out (JSPWriter)对象中进行缓存然后最终发送到客户端。 

 

 jsp四种会话跟踪技术,会话作用域,page,request,application,session 

 

Cookie及Session实现的基本原理,对HTTP协议了解理程度。  

 

 

http get和post区别  

GET和POST提交数据方式不一样: 

GET请求提交数据有限,通过在URL中添加参数方式传送数据。 POST请求除了有GET请求一样的能力外,POST请求还可能通过发送请求是附加数据的方式传送文本或二进制数据   

 

 Singleton的几种实现方式

 

在项目中是否采用分层的结构,是怎样划分的,各层之间采用了哪些相关技术? 对哪些设计模式比较熟悉? 

 

描述一下实现一段代码的过程,从需求到最终交付。 

 

 开发环境怎么样 你是怎么开发一个项目的(项目流程 和 开发流程) 如何保证代码质量的 

 

 存放入ArrayList中的对象,如果有一个Integer类型的属性字段,现在要对ArrayList中的对象按升序或降序排序,有哪些方法? 

 

 在开发中如何把握代码质量。  

要点: 

1、可读性:命名、风格、注释。 

2、可维护性:单一职责、面向接口编程、消除重复代码、常量定义。 

3、性能考量:拼装字符串、预编译正则表达式、线程同步、数据库更新的批处理、SQL优化。

 

 

分享到:
评论

相关推荐

    Java笔试题集合-常见java笔试题目

    Java笔试题集合是Java开发者在求职过程中经常遇到的一类测试,涵盖了从基础语法到高级特性的广泛知识领域。以下是一些常见的Java笔试题及其相关的知识点: 1. **基础语法** - **数据类型**:Java有八种基本数据...

    JAVA 面试题集合

    这个"JAVA面试题集合"是某位专业人士精心整理的面试资源,旨在帮助求职者或开发者准备Java相关的面试。以下是对其中可能包含的一些核心知识点的详细解释: 1. **基础语法**:面试通常会涵盖Java的基础知识,如变量...

    JAVA面试题集合

    JAVA面试题集合是一个综合性的资源包,包含了针对Java程序员面试的多方面问题和知识点,旨在帮助求职者准备面试,提高其在技术面试中的表现。这个集合涵盖了基础到高级的Java编程概念,以及与Spring MVC相关的实践...

    JAVA面试试题集合

    在IT行业中,Java是一种广泛应用的编程语言,尤其在企业级...对于提供的两个文档“java面试题(2).doc”和“java面试题(1).doc”,它们很可能是包含上述知识点的具体题目集,建议仔细研读并逐一解答,以加深理解和记忆。

    各大公司JAVA面试题集合

    这份"各大公司JAVA面试题集合"文档无疑是准备Java程序员面试的宝贵资源。它涵盖了各地区、各大公司的面试题目,帮助求职者了解并掌握Java技术的核心知识点,以应对不同公司的技术面试。 Java面试通常会涉及以下几个...

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集.zip

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集 100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx ...

    JAVA面试题集合面试技能大全

    JAVA面试题集 基础知识: 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常。违反语义规则包括2种情况。一种是JAVA类库内置的语义...

    java笔试题集合及答案

    这些知识点涵盖了Java程序员的基础知识和技能,对于准备Java笔试题大集合及各大公司的笔试题来说,这些都是必须掌握的。通过深入学习和实践,可以提升解决问题的能力,为面试和实际工作打下坚实基础。

    集合了J2EE面试题.doc、笔试题.doc、JAVA面试题集合.chm

    本资源集合包含了三个关键文件,分别是“JAVA面试题集合(项目11部V1.0版).chm”、“J2EE面试题.doc”以及“笔试题.doc”,这些文档覆盖了广泛的Java和J2EE相关的知识,对于准备面试或者提升个人技能非常有帮助。...

    JAVA面试题集合(项目2部)

    本资源集合提供了一份全面的Java面试题,旨在帮助求职者和开发者巩固和提升自己的Java技能。以下是一些核心知识点的详细阐述: 1. **Java基础** - **变量与数据类型**:了解基本数据类型、引用数据类型,以及它们...

    Java 面试题 集合

    本集中的面试题主要围绕着Java集合框架中的核心接口和类,如List、Set、Map以及ArrayList、LinkedList、HashSet、HashMap等展开。 1. **List接口**: - List接口是有序的集合,允许有重复元素。ArrayList和...

    Java开发面试题集合已经答案

    Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合已经答案Java开发面试题集合...

    Java面试题集合好多人的

    【Java面试题集合】 在Java领域,面试是评估求职者技术实力的重要环节。这份"Java面试题集合"包含了丰富的题目,旨在帮助准备Java职位面试的求职者更好地理解并掌握核心概念和技术。它不仅覆盖了基础的Java语法,还...

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    Java面试题以及答案(小生).pdf java面试题(题库全).doc JS 数据库答案.doc Land.the.Tech.Job.You.Love-人人都有好工作—IT行业求职面试必读.pdf Linux命令大全完整版.doc sql查询语句练习.doc Web服务器的工作...

    java 面试题 集合

    在Java面试中,集合相关的知识点常常是考察的重点,因为它们涉及到数据结构、内存管理和多线程等关键概念。以下是对这些知识点的详细解析: 1. **集合接口**: - `List`:有序、允许重复元素的集合,典型实现如...

Global site tag (gtag.js) - Google Analytics