今天第一次参加面试,十分紧张,加上本身我就学艺不精,没系统学过Java去面Java实习,问出的许多问题我都没有回答出来,估计我的第一次实习生面试凉了。 不过总不能沉溺于过去,总结一下今天面试中我遇到的问题,并且会上一些自己查找到的答案。 后续关于Java开发相关岗位的实习生面试问题我也会在此处

  • 1.Java 重写(Override)与重载(Overload)

区别点

重载方法

重写方法

参数列表

必须修改

一定不能修改

返回类型

可以修改

一定不能修改

异常

可以修改

可以减少或删除,一定不能抛出新的或者更广的异常

访问

可以修改

一定不能做更严格的限制(可以降低限制)

  • 2.Java的对象和引用

    StringBuffer s;
    s = new StringBuffer(“Hello World!”);

    第一个语句仅为引用(reference)分配了空间,
    而第二个语句则通过调用类(StringBuffer)的构造函数StringBuffer(String str)为类生成了一个实例(或称为对象)。
    这两个操作被完成后,对象的内容则可通过s进行访问——在Java里都是通过引用来操纵对象的。

  • 3.对Java字符串的理解
    深入理解Java中的String

  • 4.对异常的理解
    Java面试问题__异常__w3c

  • 5.列出几个Java集合
    Java 常用集合list与Set、Map区别及适用场景总结

  • 6.Java的gc(垃圾回收机制)
    程序员可能创建了一个对象, 以后一直不再使用这个对象, 这个对象却一直被引用, 这个对象无用但是却无法被垃圾回收器回收的

  • 7.sleep和wait的区别
    sleep(1000),会把把线程放到一边, 直到整整一秒之后才再次启动
    wait(1000),则是把线程放到一边至多一秒. 如果碰到 notify() 或者 notifyAll() 就会提前启动.
    而且 wait() 方法是在 Object 类里. 而 sleep() 是在 Thread 类里.

  • 8.面向对象的特点
    封装

  • 9.新建线程的方法三种方法
    继承线程类,实现Runnable接口,匿名类

  • 10.原子操作
    所谓的原子性操作即不可中断的操作,比如赋值操作 int i = 5;
    原子性操作本身是线程安全的
    但是 i++ 这个行为,事实上是有3个原子性操作组成的。
    步骤 1. 取 i 的值
    步骤 2. i + 1
    步骤 3. 把新的值赋予i
    这三个步骤,每一步都是一个原子操作,但是合在一起,就不是原子操作。就不是线程安全的。

  • 11.接口与继承
    只支持接口的多继承,不支持’继承’的多继承哦

  • 12.常量池
    常量池

  • 13.对项目进度的管理
    需要根据项目的紧急程度,先后完成一些不一样的功能,这是开发中需要学习的。

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

更多推荐

Java实习面试重点基础知识