文档章节

Java面试题目(基础部分)

在水一方发盐人
 在水一方发盐人
发布于 2016/11/18 17:14
字数 566
阅读 19
收藏 1

1、List 与 Set 

    1)set 是不保证集合中元素的顺序的 ,List的特征是其元素有序存储

    2)set它不允许出现重复元素 且允许包含值为null的元素,但最多只能有一个null元素

    3)Set 和List 都继承了Conllection

2、ArrayList 的最大长度是多少?多线程操作(添加、删除)的情况下怎么避免ConcurrentException

     1、ArrayList是基于数组实现的,最大长度不会超过数组的长度,那数组的最大长度是多少呢?这个问题还真没想过,定义一个试试就知道了,最大长度是byte[] arr3 = new byte[2147483647];再大一点就报编译不通过。所以最大值是int的最大值是 (int 4个字节) 2的31次方减去1 。也就是Integer.MAX_VALUE的值 。这个问题我没答上来,如果你能答对话,他肯定会问下一个问题,如果业务中可能存在超过这个长度的数据怎么办,回答是 LinkedArrayList (基于于双向链表)

2、使用CopyOnWriteArrayList 替代,或 线程同步 ,或自定义一个方法(类似cocos2dx引擎的demo游戏里的清除子弹的方式,先遍历list1把要删除的数据添加到list2中,再便利list2 并删除list中的重叠的数据)

3、HashMap是怎么实现的 ,看过它的源码吗(,我擦,直没看过,也不知道)

     不知道的有必要查一下,最好看看源码吧

4、mysql 什么样的列上应该加索引 ,索引原理是什么,基于什么数据结构实现

    基于B+树  (基础不好的应该学习一下了B+树,红黑树等)我回答错了哈哈

5、消息队列适合用哪种数据结构存储

     

6、多线程问题,并发修改 int i=0  (i++)的问题,几种方式实现线程同步 

          我回答了三种:

          1、asynchronized 加在块或方法上 ; 2、Lock.lock() 与 Lock.unlock 3、使用AtomicInteger

          面试过程中,面试官好像一直试图引导我另一种实现方式,不过我没想出来。难道是想让我回答

          使用volatile关键字修饰?但是他失望了呵呵、

7、

 

© 著作权归作者所有

共有 人打赏支持
在水一方发盐人
粉丝 1
博文 40
码字总数 9217
作品 0
程序员
跳槽时,这些Java面试题99%会被问到

我在 Oracle 已经工作了近 7 年,面试过从初级到非常资深的Java工程师,且由于 Java 组工作任务的特点,我非常注重面试者的计算机科学基础和编程语言的理解深度,可以不要求面试者非要精通 ...

Java小铺
08/15
0
0
JAVA程序员学到什么程序可以去找工作及面试呢?

一、简历 简历里面需要包含的内容应该是学历,自己的技术栈,然后自己做过的一些项目。简历不需要太长,两页纸即可。里面应该重点写你使用过的一些框架,自己做的一些项目,以及自己的收获,...

java高级架构牛人
05/29
0
0
Java面试中,遇到这类面试题最吃亏!

从你接触 Java开发到现在,你对 Java最直观的印象是什么呢?是它宣传的 “Compile once, run anywhere”,还是目前看已经有些过于形式主义的语法呢?你对于 Java平台到底了解到什么程度?请你...

Java大蜗牛
07/20
0
0
非可变性(Immutability)和对象引用(Object reference)

一些比较核心的Java问题经常会用来考验面试者的Java基本知识功底。这篇文章列出来了一些在我的书里面没有的面试题,通过这些面试题读者也可以梳理一下Java基础知识点。 Q1.下面的代码片段会输...

markGao
2014/03/10
0
0
【荐】一篇令人心情愉悦的面试总结

前言 15年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中... 最终有幸去...

茶轴的青春
08/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

配置Spring的注解支持

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 配置Spring的注解支持 以上也提到了使用注解来配...

凯哥学堂
31分钟前
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
33分钟前
0
0
JavaScript 概述

JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得...

Mr_ET
今天
0
0
Java Run-Time Data Areas(Java运行时数据区/内存分配)

Java运行时数据区(内存分配) 本文转载官网 更多相关内容可查看官网 中文翻译可参考 2.5. Run-Time Data Areas The Java Virtual Machine defines various run-time data areas that are use...

lichuangnk
今天
0
0
docker learn :services docker-compose.yml

docker-compose.yml定义了服务的运行参数 version: "3" services: web: # replace username/repo:tag with your name and image details image: hub.c.163.com/dog948453219/friendlyhello d......

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部