网站地图
RSS订阅
收藏本站
您的位置:网站首页 > 面试技巧

20个高级Java面试题汇总

作者:habao 来源:未知 日期:2017-11-25 20:04:49 人气: 标签:java面试问题
导读:这是一个高级Java面试系列题中的第一部分。这一部分论述了可变参数,断言,垃圾回收,初始化器,令牌化,日期,日历等等Java核心问题。什么是可变参数?断言的用途…

  这是一个高级Java面试系列题中的第一部分。这一部分论述了可变参数,断言,垃圾回收,初始化器,令牌化,日期,日历等等Java核心问题。

  什么是可变参数? 断言的用途? 什么时候使用断言? 什么是垃圾回收? 用一个例子解释垃圾回收? 什么时候运行垃圾回收? 垃圾回收的最佳做法? 什么是初始化数据块? 什么是静态初始化器? 什么是实例初始化块? 什么是正则表达式? 什么是令牌化? 给出令牌化的例子? 如何使用扫描器类(Scanner Class)令牌化? 如何添加小时(hour)到一个日期对象(Date Objects)? 如何格式化日期对象? Java中日历类(Calendar Class)的用途? 如何在Java中获取日历类的实例? 解释一些日历类中的重要方法? 数字格式化类(Number Format Class)的用途?

  可变参数允许调用参数数量不同的方法。请看下面例子中的求和方法。此方法可以调用1个int参数,或2个int参数,或多个int参数。

  断言是在Java 1.4中引入的。它能让你验证假设。如果断言失败(即返回lse),就会抛出AssertionError(如果启用断言)。基本断言如下所示。

  断言不应该用于验证输入数据到一个public方法或命令行参数。IllegalArgumentException会是一个更好的选择。在public方法中,只用断言来检查它们根本不应该发生的情况。

  垃圾回收是Java中自动内存管理的另一种叫法。垃圾回收的目的是为程序保持尽可能多的可用堆(heap)。 JVM会删除堆上不再需要从堆引用的对象。

  通过函数第一行代码中参考变量calendar,在堆上创建了GregorianCalendar类的一个对象。

  用编程的方式,我们可以要求(记住这只是一个请求不是一个命令)JVM通过调用System.gc()方法来运行垃圾回收。

  当内存已满,且堆上没有对象可用于垃圾回收时,JVM可能会抛出OutOfMemoryException。

  对象在被垃圾回收从堆上删除之前,会运行finalize()方法。我们不要用finalize()方法写任何代码。

  请看下面的例子:static{ 和 }之间的代码被称为静态初始化器。它只有在第一次加载类时运行。只有静态变量才可以在静态初始化器中进行访问。虽然创建了三个实例,但静态初始化器只运行一次。

  令牌化是指在分隔符的基础上将一个字符串分割为若干个子字符串。例如,分隔符;分割字符串ac;bd;def;e为四个子字符串ac,bd,def和e。

  现在,让我们如何看看添加小时到一个date对象。所有在date上的日期操作都需要通过添加毫秒到date才能完成。例如,如果我们想增加6个小时,那么我们需要将6小时换算成毫秒。6小时= 6 * 60 * 60 * 1000毫秒。请看以下的例子。

  Calendar类(Youtube视频链接 - 在Java中用于处理日期。Calendar类提供了增加和减少、月数和年数的简便方法。它还提供了很多与日期有关的细节(这一年的哪一天?哪一周?等等)

  从文件中可以看出,搭载OS X操作系统的MacBook以及搭载tvOS操作系统的Apple TV使用周...

  三星S9手机已经陆陆续续有了一些传闻,这款产品很可能在明年MWC展会期间发布,去年S8...

  据CNBC网站时间11月22日报道,惠普企业公司(HPE)公司首席执行官梅格·惠特曼(M...

  一名美国已责令进行一项新的审判,目的是判定三星应因其抄袭苹果公司iPhone外观设...

  大家知道,将蓝牙设备与Windows PC配对是一件很繁琐的事情,需要一个个步骤,还得用上...

  iPhone X 已经上市一段时间了,相信很多朋友都已经熟悉了苹果最新的旗舰产品。而对于...

  王者荣耀最近要上线神秘商店了,很多玩家都非常期待每次神秘商店的上线,可能会有不同......

  炉石传说继【冰封王座的骑士】新卡组后又推出【狗头人与地界】新卡包。此套卡组已......

  《绝地大逃杀》中的四排是需要有一些战术策略的,这样团队合作才能发挥出较好的效......

  推荐:

  

本文网址:
下一篇:没有资料
共有:条评论信息评论信息
发表评论
姓 名:
验证码: