前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java多线程、集合和IO面试题_02

java多线程、集合和IO面试题_02

作者头像
黑泽君
发布2018-10-11 14:35:59
4250
发布2018-10-11 14:35:59
举报
文章被收录于专栏:黑泽君的专栏黑泽君的专栏

java多线程、集合和IO面试题_02

代码语言:javascript
复制
=============================================================================
逻辑思考题:

1:你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻?
    4个
-----------------------------------------------------------------------------
2:如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?
    5-3+5-3
    3+3+3-5
-----------------------------------------------------------------------------
3:有8个颜色,大小一样的小球,其中的一个质量和比其他的重,给你一个天平,你最少几次就可以称出那个重的球。(不要想着自己用手拿)
    2次
    
    先分成三份3个、3个、2个,
    称3个、3个,
    若重的在其中一份,再分成三份1个、1个、1个;
    称1个、1个,若重的在其中一份,就称出了。
    若重的不在其中,那剩余的1个就是重的。
    若称的3个相等,说明在2个里面。
    
    思想:更多可能的利用推理。
=============================================================================
面试题:

1:请介绍一下自己(2-3分钟)
    姓名、家乡。
    经验(项目经验)和能力(自学能力)。
    态度:对编程有兴趣
    兴趣爱好:可提可不提
-----------------------------------------------------------------------------
2:你有男/女朋友吗?你结婚了吗?
    稳定性
    精力,加班,出差。
    你家庭和睦吗?
-----------------------------------------------------------------------------
3:你有什么要问的吗?
    对公司一定要有了解。(太偏僻的公司女同学就不要去了)
    公司的前景、业务方向。
    谈钱不伤感情。(心里有个底线6000,开口7000)
=============================================================================
面试题:

多线程:

1:多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
    两种。
    
    继承Thread类
    实现Runnable接口
    
    两种。
  
    同步代码块
    同步方法(静态同步方法)
-----------------------------------------------------------------------------
2:启动一个线程是用run()还是start()?
    start();
    
    run():封装了被线程执行的代码,直接调用仅仅是普通方法的调用。
    start():启动线程,并由JVM自动调用run()方法。
-----------------------------------------------------------------------------
3:sleep() 和 wait() 有什么区别?
    sleep():必须指定时间,不释放锁。
            是Thread类中的一个方法,用于线程休眠,休眠时间结束后,该线程可以自动唤醒。
    wait():可以不指定时间,也可以指定时间,并立即释放锁。
            是Object类中的一个方法,用于线程等待,如果想要唤醒,必须使用notify()或notifyAll()(不能自动唤醒)。
-----------------------------------------------------------------------------
4:线程的基本概念及线程的生命周期
    线程:是进程(程序)的执行单元,执行路径。
    
    新建-->就绪-->运行-->死亡
    新建-->就绪-->运行-->阻塞-->就绪-->运行-->死亡
-----------------------------------------------------------------------------

集合:

1: HashMap和Hashtable的区别。
    历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java1.2引进的Map接口的一个实现。
    同步性:Hashtable是线程安全的,也就是说是同步的;而HashMap是线程序不安全的,不是同步的。
    值:只有HashMap可以让你将空值作为一个表的条目的key或value。
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-04-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档