关于hashcode和equals,下列哪些说法是正确的:答案在文末
- A. hashcode是Class的方法,equals是Object的方法。
- B. hashcode决定(如:HashMap)存储位置;equals决定是否需要覆盖(同一hash下)集合元素。
- C. 类重写hashcode,必须重写equals。
- D. 两者是否需要重写,没有必然联系。
多选 关于线程池的创建,下列哪些说法符合《阿里巴巴Java开发手册》:答案在文末
- A. 线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式
- B. new FixedThreadPool和new SingleThreadPool的主要问题是堆积的请求处理队列可能会耗费非常大的内存,甚至OOM。
- C. new CachedThreadPool和new ScheduledThreadPool的主要问题是线程数量最大数是Integer.MAX_VALUE,可能会创建数量非常多的线程,甚至OOM。
- D. 我们的机器运算速度够快,所以线程池的创建并不需要特别的约定。
多选 1关于生产环境的日志文件,下列哪些说法符合《阿里巴巴Java开发手册》:答案在文末
- A. 异常信息应该包括两类信息:案发现场信息和异常堆栈信息。
- B. 日志文件推荐至少保存15天,因为有些异常具备以“周”为频次发生的特点。
- C. 避免重复打印日志,浪费磁盘空间,务必在log4j.xml中设置additivity=false。
- D. 错误日志和业务日志尽量分开存放。
多选 关于Java代码的设计和开发注意事项下列哪些说法符合《集合开发规约》:答案在文末
- A. 禁止将URL、文件名、系统参数、数据库连接地址、业务规则的可变参数,硬编码在工程中。
- B. long或者Long初始赋值时,必须是大写的L,不能小写。
- C. 当一个类有多个构造方法,或是多个同名方法,这些方法应该按顺序放置在一起,便于阅读。
- D. 相同参数类型,同等业务含义,才可以使用Java的可变参数,参数的类型尽量避免使用Object。// 避免强制转换引起RuntimeException的ClassCastException
多选 使用CountDownLatch进行异步转同步操作时,下列哪些说法是正确的:答案在文末
- A. 每个线程退出前必须调用countDown()方法。
- B. 线程执行代码注意catch异常,确保countDown()方法可以被执行。
- C. 子线程抛出异常堆栈,直接就可以在主线程catch到。
- D. 主线程必须 在启动其他线程后调用await()方法,这样主线程的操作就会在这个方法上阻塞,直到其他线程完成各自的任务。
答案,依次是
- 第1题答案:BC
- 第2题答案:ABC
- 第3题答案:ABCD
- 第4题答案:ABCD
- 第5题答案:ABD
公众号有 600 道题题库,持续更新中
扫码关注公众号,获取全部 600 道题库:回复关键词:“考试题”
即可无套路获取,持续更新的 600 道题库.pdf