java实习生面试题的重点题集

作为刚学习java知识的小白,走出学校就面临着找工作的难题。作为实习生来说,在实际操作上没有太多的经验,唯有把握住理论知识的题目,才能在面试中取得更多的机会。这里我们罗列出了部分实习生面试时可能遇到的java题目,大家可以作为一份面试前的复习资料进行学习。

1.java的数据结构你用过那些?map与set的本质区别是什么

数据结构:是指相互之间存在一种或多种特定关系的数据元素的集合。

依据逻辑关系,数据结构分为:线性和非线性数据结构。

2.String 和StringBuffer 的区别

JAVA 平台提供了两个类:String 和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String 类提供了数值不可改变的字符串。而这个StringBuffer 类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers 来动态构造字符数据。

3.list,map,set,array,它们有什么区别

List接口主要有三个实现类:LinkedList,ArrayList,Vector.

LinkedList:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址

ArrayList和Vector的区别:ArrayList是非线程安全的,效率高;Vector是基于线程安全的,效率低。

1)Set接口主要有两个实现类:HashSet(底层由HashMap实现)和LinkedHashSet

2)Map接口主要实现类:HashMap,HashTable和LinkedHashMap

4.java中的Annotation的工作原理

一个 annotation类型被定义为runtime retention后,它才是在运行时可见,当class文件被装载时被保存在class文件中的annotation才会被虚拟机读取。

Annotation提供一种机制,将程序的元素如:类,方法,属性,参数,本地变量,包和元数据联系起来。这样编译器可以将元数据存储在Class文件中。这样虚拟机和其它对象可以根据这些元数据来决定如何使用这些程序元素或改变它们的行为。

5.GC 是什么? 为什么要有GC?

GC 是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java 提供的GC 功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java 语言没有提供释放已分配内存的显示操作方法。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:System.gc() 或Runtime.getRuntime().gc() 。

6.字符串的操作:

写一个方法,实现字符串的反转,如:输入abc,输出cba

public static String reverse(String s){
        int length=s.length();
 
        StringBuffer result=new StringBuffer(length);
 
        for(int i=length-1;i>=0;i--)
 
            result.append(s.charAt(i));
 
        return result.toString();
 
}

以上就是java实习生面试题的分享,在掌握住理论知识点后,可以就代码的实例操作部分进行练习,因为可能会有实际程序运行的考察。学完本篇内容后,还需要找寻更多的资料进行面试准备。更多Java试题指路:java面试题

java集合类面试题:在java面试题的考察中,集合类是必不可缺少的考点。在学习时,其中的几个常见集合类和接口问题都是重点,在面试时也会作为高频题目而出现。本篇为大家带来一些集合类的基础知识点题目,便于大家在复习时进行概念的理解和重点的突出 ...