`
javawangli
  • 浏览: 224438 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java面试题汇总

阅读更多

1.Java 中多线程有几种,分别如何实现?

  Java语言中提供了三种实现方式:

   继承Thread

   实现Runnable接口

   使用TimerTimerTask组合

   最常用的就是Thread类和Runnable接口

继承Thread类就具备多线程的能力

 Public class TestThread1 extends Threads{

 Public static void mian(String args[]){

    //创建对象

    TestThread1 tt1=new TestThread1();

   //启动线程

    tt1.start();

}

Public void run(){

 //run方法是Thread类中的方法,一般在子类中重写 

}

}

 

2,String and StringBuffer的区别?

   String:长度给定不可变,当多个字符串联合时要先转为StringBuffer,再联合,速度慢。     

   StringBuffer:长度可变,可以将多个字符串值直接联合,效率高

 

3,回话跟踪技术有几种分别是什么

有三种分别是:cookie技术,session技术,url重写

 

4、谈谈final, finally, finalize的区别
答:final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载
finally—再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)
finalize—方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的

 

5, 抽象类和接口的区别?

(1)接口可以被多重implements,抽象类只能被单一extends

(2)接口只有定义,抽象类可以有定义和实现

(3)接口的字段定义默认为:public static final, 抽象类字段默认是"friendly"(本包可见)

当功能需要累积时用抽象类,不需要累积时用接口。

 

6, 集合的作用是什么?

数据的传送 增、删、改、查、constainsAll,可以存放不同类型的对象。

 

7,集合的通用方法有那些?通用方法是什么?(操作)

       集合List 的遍历方法有:Iterator:,Enumeration,For,Get,set,

       Collection的通用方法有:Iterator(), Add(),Clear(), remove()

 

8, 说出ArrayList,Vector, LinkedList的存储性能和特性HashMapHashtable的区别

   ArrayList Vector:以数组的方式存储,增、删慢,查、改快

   ArrayList:线程不安全,速度快

   Vector:线程安全,速度慢(synchoronized)

   LikedList: 以单链表的方式存储,增、删快,查、改慢

  HashMapHashtable都实现的Map接口,HashTable线程安全,HashMap线程不安全。

  HashMapHashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key,由于非线程安全,效率上可能高于Hashtable.

     HashMapHashtable的区别。 
      HashMapHashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key,由于非线程安全,效率上可能高于Hashtable
HashMap允许将null作为一个entrykey或者value,而Hashtable不允许。
HashMapHashtablecontains方法去掉了,改成containsvaluecontainsKey。因为contains方法容易让人引起误解。 
Hashtable继承自Dictionary类,而HashMapJava1.2引进的Map interface的一个实现。
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。 
HashtableHashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。

 

9.  Collection 和 Collections的区别。

Collection是集合的根接口,其下有setlist;  Collections是集合的算法。

 

10 Set里的元素是不能重复的,那么用什么方法来区分重复与否呢是用==还是equals()?  contains?

在比较时先调用hashCode方法,如果不相同,证明不相等。

如果相同,再调用equals方法,如果equals方法相同,证明相等,不相同,证明不相等。

==:主要用在基本数据类型及引用;Equals:主要是对象或对象引用的比较。

集合中是否包含某一个元素用contains来判断。

 

11 List, Set, Map是否继承自Collection接口?

List,set继承于Collection; Map没有继承于Collection,其相对是独立的。

属于Collection类型的对象,可以通过构造函数将一个集合构造成另外一个集合。

 

12,String是最基本的数据类型吗?

基本数据类型包括byteintcharlongfloatdoublebooleanshort

java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer

 

13 abstract classinterface有什么区别
  答:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口

 

14, 抽象类与接口?
答:抽象类与接口都用于抽象,但是抽象类(JAVA)可以有自己的部分实现,而接口则完全是一个标识(同时有多重继承的功能) 
JAVA类实现序例化的方法是实现java.io.Serializable接口
Collection框架中实现比较要实现Comparable 接口和 Comparator 接口

15,你所知道的集合类都有哪些?主要方法?
答:最常用的集合类是 List  Map List 的具体实现包括 ArrayList  Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。 List 适用于按数值索引访问元素的情形。 
Map 提供了一个更通用的元素存储方法。 Map 集合类用于存储元素对(称作""""),其中每个键映射到一个值。

 

16,、垃圾回收的优点和原理。并考虑2种回收机制
答:Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有"作用域"的概念,只有对象的引用才有"作用域"。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。

 

17什么是java序列化,如何实现java序列化?
答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。


18ListMapSet三个接口,存取元素时,各有什么特点?
答:List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值。

 

19.Ssh框架是如何整合的,他们都有什么作用?

   SSH框假中spring充当了管理容器的角色。我们都知道Hibernate用来做持久层,因为它将JDBC做了一个良好的封装,程序员在与数据库进行交互时可以不用书写大量的SQL语句。Struts是用来做应用层的,他它负责调用业务逻辑serivce层。所以SSH框架的流程大致是:  Jsp页面----Struts应用层------Service(业务逻辑处理类)---Hibernate(左到右)struts负责控制Service(业务逻辑处理类),从而控制了Service的生命周期,这样层与层之间的依赖和强,属于耦合。这时,使用spring框架就起到了控制Action对象(Strus中的)和Service类的作用,两者之间的关系就松散了,SpringIoc机制(控制反转和依赖注入)正是用在此处。

      

   

<!--EndFragment-->

分享到:
评论

相关推荐

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

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

    java面试资料java面试题集java笔试题汇总资料

    java面试资料java面试题集java笔试题汇总资料,java面试资料java面试题集java笔试题汇总资料,java面试资料java面试题集java笔试题汇总资料,包括基础面试题、JavaWeb面试题、JAVA面试题集.txt、分布式相关面试题...

    java面试笔试资料Java经典项目集锦java笔试题大集合及答案题库java笔试题汇总资料个合集(188).zip

    java面试笔试资料Java经典项目集锦java笔试题大集合及答案题库java笔试题汇总资料个合集(188) 100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码....Java面试题以及答案

    java面试题汇总java笔试题大集合及答案题库java笔试题汇总资料超过100个合集

    这份“java面试题汇总”合集包含超过100个题目,涵盖了Java的基础知识、进阶概念以及实战经验,旨在帮助求职者准备Java相关的面试和笔试。 首先,基础部分包括了对Java语法的理解,如变量、数据类型、运算符、流程...

    100家大公司java笔试题汇总.docx

    Java编程语言笔试题汇总 本文档总结了Java编程语言的常见笔试题,涵盖了Java基础知识、面向对象编程、异常处理、Servlet、JDBC、J2EE等方面的知识点。 一、Java基础知识 1. Java中的abstract关键字可以修饰字段、...

    java面试题总结资料

    这份"java面试题总结资料"涵盖了多个Java核心领域的关键知识点,包括但不限于: 1. **基础语法**:理解基本的数据类型(如整型、浮点型、字符型和布尔型),变量的声明与使用,以及运算符的优先级。同时,要熟悉...

    java 笔试题汇总

    Java笔试题汇总是一份集合了众多Java编程基础知识和进阶技术的题目集合,旨在帮助学习者和求职者全面复习和检验自己的Java技能。这个压缩包可能包含了大量的Java面试和笔试常见问题,涵盖了从基础语法、面向对象编程...

    Java面试宝典 100家大公司java笔试题汇总 等

    其次,"100家大公司java笔试题汇总.doc"这份文档很可能包含了来自知名企业的实际笔试题目,这些题目往往更注重实践应用和问题解决能力。比如,可能会有涉及内存管理、垃圾回收的问题,或者关于JVM(Java虚拟机)的...

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

    100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx 8张图解java.docx Addison.Wesley.Java.Concurrency.in.Practice.May.2006.chm ...

    JAVA面试笔试题大汇总JAVA面试笔试题大汇总

    JAVA面试笔试题大汇总JAVA面试笔试题大汇总JAVA面试笔试题大汇总JAVA面试笔试题大汇总JAVA面试笔试题大汇总JAVA面试笔试题大汇总JAVA面试笔试题大汇总,JAVA面试笔试题大汇总JAVA面试笔试题大汇总

    100家大公司java笔试题汇总

    Java笔试题汇总 Java是最流行的编程语言之一,在软件开发行业中非常常用。以下是Java笔试题汇总,涵盖了Java的多个方面,包括Java基础、Java面向对象编程、Java多线程、Java网络编程、Java数据库编程等。 Java...

    2019java面试题汇总

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能、丰富的类库和强大的...通过阅读《2019java面试题汇总@www.java1234.com.pdf》这份文档,你可以找到更多具体的面试题目和解答,进一步巩固你的Java技能。

    2020 Java面试题汇总.zip

    这份"2020 Java面试题汇总"压缩包文件很可能是为了帮助求职者准备Java开发岗位的面试而整理的一系列问题和解答。在Java面试中,通常会涉及到以下几个核心知识点: 1. **基础语法**:面试官会考察你对Java基本语法的...

    java面试题汇总java面试题汇总.pdf

    java面试题汇总java面试题汇总.pdf

    java面试题总结 下载

    这份"java面试题总结资料"应该包含了作者精心整理的各类常见问题和解答,旨在帮助求职者更好地准备面试。 首先,让我们来看看Java基础部分。这部分通常会涉及变量、数据类型、运算符、流程控制语句、类与对象、封装...

    史上最全java面试题之JAVA笔试题汇总.doc

    史上最全java面试题之JAVA笔试题汇总.doc

    java面试笔试题库java学习笔记开发教程互联网公司面试资料大全合集.zip

    100家大公司java笔试题汇总.doc 125条常见的java 面试笔试题大汇总.pdf 2011最新整理java经典代码.doc 25个经典的Spring面试问答.docx 8张图解java.docx Addison.Wesley.Java.Concurrency.in.Practice.May.2006.chm ...

    java常见面试题汇总

    java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见面试题汇总 java常见...

    北京java面试题汇总

    【标签】:“北京java面试题” 该标签明确了这个题库的地域性和专业性,意味着这些题目是根据北京地区Java开发岗位的实际需求和面试趋势整理的。因此,熟悉这些题目将有助于求职者更好地适应北京IT行业的面试环境。...

    Java笔试题汇总(125道企业常见java笔试题)

    本资料"Java笔试题汇总(125道企业常见java笔试题)"包含了125个企业在招聘过程中可能会遇到的Java相关问题及其答案,涵盖了Java基础、Javaweb等多个方面,旨在帮助求职者全面了解并准备Java面试。 Java基础部分...

Global site tag (gtag.js) - Google Analytics