Top

记第二次面试经历——Java实习生面试



距离上一次面试也有将近一个月了。按照惯例,养成良好的习惯,以后每次面试后我都会写一篇博文记录一下经历,以此找出自己的不足,努力提升自己。

一、笔试部分

笔试限定一小时内完成,题目不多,有简答、建表题、选择题等。

  • 1、数组有没有 length() 这个方法? String 有没有 length() 这个方法?

    数组没有 length() 方法!!只有length属性!输出数组的元素个数!(我答错了)
    String 有 length() 方法,输出字符串长度。(null时会报空指针异常)

  • 2、什么是内存泄露?在编码过程中要注意哪些因素以防止内存泄露?

    内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存。内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,导致在释放该段内存之前就失去了对该段内存的控制,从而造成了内存的浪费。 ——维基百科
    对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着。
    参考文章:https://www.jianshu.com/p/54b5da7c6816

  • 3、简述 Java Server Page 和 Servlet 的区别和联系。

    参考文章:https://www.zhihu.com/question/37962386

  • 4、请写出“不用中间变量”交换两个数的实现过程

    1
    2
    3
    a = a + b;
    b = a - b;
    a = a - b;
  • 5、柏拉图学园的门口竖着一块牌子“不懂几何者不得入内”。这天,来了一群人,他们都是懂几何的人。如果牌子上的话得到准确的理解和严格的执行,那么以下断定中,只有一个是真的断定,这一真的断定是:

    A. 他们不可能被允许进入
    B. 他们一定不会被允许进入
    C. 他们一定会被允许进入
    D. 他们可能不会被允许进入

  • 6、XML文档定义有几种形式?解析XML文档有哪几种方式?

    XML文档定义分为DTD和Schema两种形式.
    1、DOM解析;2、SAX解析;3、JDOM解析;4、DOM4J解析。
    参考文章:https://blog.csdn.net/xinyuan_java/article/details/66100196

  • 7、如果现在你准备为公司做这样一个员工工资系统,公司现有如下待遇类别:通信补助、住房补助、交通补助、Blablabla…. 这些待遇的金额每个月会随着员工的业绩而有不同变化(具体变化规则我们不关心),而且每位员工能享受到的待遇类别也不同。随着公司的发展,以后可能还会有更多的待遇类别。设计一个存放待遇类别的表,并要求支持以后待遇类别的动态添加和删除。

  • 8、前端题(略)
    大概就是给你一段前端代码,包含一些Javascript,让你描述它的页面效果。

  • 9、构造一个 ArrayList 类的实例,哪个方法正确?

    1
    2
    3
    4
    A. ArrayList list = new Object();
    B. List list = new ArrayList();
    C. ArrayList list = new List();
    D. List list = new List();
  • 10、下列数组初始化正确的是:

    1
    2
    3
    4
    A. int[5] a = {1,2,3,4,5};
    B. int[2][2] a = {{1,2},{3,4}};
    C. int[][] a = {{2,3,4,5}, new int[3]};
    D. int[][] a = new int[][5];
  • 11、下面的程序名为 Student.java

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Student {
    private String name;

    public Student(String name) { //1
    this.name = name; //2
    }

    public static void main(String[] args) {
    Student student = new Student(); //3
    }
    }

    使用如下命令编译:javac Student.java 将会得到什么结果?
    A. 将会顺利通过编译,并将产生一个 Student.class 的类文件。
    B. 编译时将在//3处出错
    C. 编译时将在//2处出错
    D. 编译时将在//1处出错

二、面试部分

分为HR面和技术面,跟HR聊得很开心,甚至聊到吃鸡去了… 技术面的时候气氛有点压抑,主要是询问自己做过的项目,但是由于自己太紧张导致有时候大脑空白,还把自己做过的项目弄混了,东一套西一套,真想给自己一巴掌。
问了公钥跟私钥的区别,还问了关于 Spring 的事务的配置,由于很久没碰也忘的差不多了,我那个恨啊。

三、总结

要好好去复习一下基础,另外要提前做好各种被问到的问题的可能,不能太紧张。。。另外算法能力有待提高。。。自己对这次的表现不是很满意,希望下次能做的更好!