应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

面試就业题库(三)

  文章目录
  1。java基础(1)5。0多线程系列
  5。0。1自定义线程类
  5。0。2线程的生命周期(状态)
  5。0。3线程池的实现原理?四种线程池?重要参数及原理?任务拒接策略有哪几种?
  5。0。4线程池的执行流程
  5。1java内存模型系列
  5。1。0内存分配
  5。1。1堆里面的内存分配
  5。1。2垃圾回收算法解释说明
  1标记清除算法
  2复制算法
  3标记整理算法
  4分代收集算法:
  5。1。3垃圾回收器说明
  1。CMS收集器
  2。G1收集器5。2JDK8新特性(大家查下看下)
  2。javaweb(1)
  2。1javaweb三大组件:Servlet,Filter,Listener
  2。2Servlet特点,线程是否安全
  2。3Filter过滤器作用是什么,后面学习的springmvc有什么关系,和springmvc的拦截器的区别?
  2。4Listener的分类,作用是什么,后期那些框架里面用到了监听器?
  2。5Cookie和Session区别以及使用场景?
  3。ssmspringbootspringCloud(1。5)
  4。企业开发的项目:技术说明(1。5)
  5。面试总结(3,4)1。java基础(1)
  5。0多线程系列
  5。0。1自定义线程类
  1继承Thread
  2实现Runnable接口(实现多个线程共享同一个资源)
  3实现Callable接口(实现执行完线程后,拿到返回值)
  Thread和Runnable接口实现自定义线程类,区别。
  相同点:都可以开启多线程,实现功能。
  不同点:
  Thread不能共享资源。
  Runnable共享资源。
  场景:多线程上传(下载)文件,多线程实现卖票。
  分析:文件(比如:一个大的文件,5G)就是一个资源,可以初始化5个线程共享一个文件
  票(比如:10000张票)就是一个资源,可以初始化100个线程共享10000票
  实现:通过Runnable接口,自定义线程类,去共享资源。
  实现Callable接口的任务线程能返回执行结果;而实现Runnable接口的任务线程不能返回结果;
  1。Callable接口的call()方法允许抛出异常;而Runnable接口的run()方法的异常只能在内部消化,不能继续上抛;
  2。Callable接口支持返回执行结果,此时需要调用FutureTask。get()方法实现,此方法会阻塞主线程直到获取‘将来’结果;当不调用此方法时,主线程不会阻塞!
  {Thread。Runnable接口}和Callable实现自定义线程类,区别。
  5。0。2线程的生命周期(状态)
  Thread对象共有6种状态:NEW(新建),RUNNABLE(运行),BLOCKED(阻塞),WAITING(等待),TIMEDWAITING(有时间的等待),TERMINATED(终止);状态转换又如图:
  也有一种说法,我认为也可以:
  线程只有就绪、阻塞、运行三种状态(新建〔NEW〕和终止〔TERMINATED〕状态的线程并不是线程,只是代表一个线程对象还存在):
  RUNNABLE,对应就绪和运行两种状态,也就是说处于就绪和运行状态的线程在java。lang。Thread中都表现为RUNNABLE
  BLOCKED,对应阻塞状态,此线程需要获得某个锁才能继续执行,而这个锁目前被其他线程持有,所以进入了被动的等待状态,直到抢到了那个锁,才会再次进入就绪状态
  WAITING,对应阻塞状态,代表此线程正处于无限期的主动等待中,直到有人唤醒它,它才会再次进入就绪状态
  TIMEDWAITING,对应阻塞状态,代表此线程正处于有限期的主动等待中,要么有人唤醒它,要么等待够了一定时间之后,才会再次进入就绪状态
  一个线程连着调用start两次会出现什么情况?
  不能,如果调用两次,报非法的状态异常。
  5。0。3线程池的实现原理?四种线程池?重要参数及原理?任务拒接策略有哪几种?
  自定义线程池,常见的方式
  线程池顶层接口:Executor
  线程池:
  线程池内部维护了一个线程列表,我们使用线程池只需要定义好任务,然后提交给线程池,而不用关心该任务是如何执行、被哪个线程执行,以及什么时候执行。jdk1。5引入Executor线程池框架Executor线程池框架,有以下四种实现
  任务调度框架:SpringTask框架(用的多),corn时间表达式Quratz框架,corn时间表达式
  比如:无效订单在30分钟后(从订单创建到持续30分钟结束,订单的付款状态),自动清除5。0。4线程池的执行流程
  handler拒绝策略:
  有四种:
  第一种AbortPolicy:不执行新任务,直接抛出异常,提示线程池已满
  第二种DisCardPolicy:不执行新任务,也不抛出异常
  第三种DisCardOldSetPolicy:将消息队列中的第一个任务替换为当前新进来的任务执行
  第四种CallerRunsPolicy:直接调用execute来执行当前任务5。1java内存模型系列5。1。0内存分配
  区别:jdk8之后没有永久代,被元数据替代了jdk8之后,常量池,以及class类新存储在元数据存储,jdk8之前在方法区存储。5。1。1堆里面的内存分配
  新生代GC(MinorGC):指发生新生代的的垃圾收集动作,MinorGC非常频繁,回收速度一般也比较快(需要有效率的垃圾回收算法:复制清除算法)。
  老年代GC(MajorGCFullGC):指发生在老年代的GC,出现了MajorGC经常会伴随至少一次的MinorGC(并非绝对),MajorGC的速度一般会比MinorGC的慢10倍以上。
  新生代老年代保存对象的过程
  当我们新new对象以后,存在eden区(新生代)
  当eden区空间不足时,采用MinorGC垃圾回收器清理空间
  会将没有清理对象(存活对象)移动到s1区
  当s1区空间不足时,采用MinorGC垃圾回收器清理空间
  会将没有清理对象(存活对象)移动到s2区
  当s2空间不足时,采用MinorGC垃圾回收器清理空间
  说明当前存活的对象已经是经常使用的对象。
  将新生代里面经常使用的对象移动到老年代
  当老年代空间不足时,采用MajorGCFullGC进行回收不使用的对象,清理空间5。1。2垃圾回收算法解释说明
  新生代空间:
  存储新new对象,垃圾回收器频繁在新生代进行垃圾回收,需要垃圾回收执行效率要高。
  通常采用标记清除算法
  老年代空间
  存储大的对象(通常指的大的数组对象)以及存活时间久的对象,不需要频繁的进行垃圾回收。对执行回收效率没有要求。
  通常采用:标记整理算法(在G1垃圾回收器里面用的比较多)
  1标记清除算法
  分为两步:
  先从堆内存中判断已经不再使用的对象,进行标记
  将标记的对象使用垃圾回收器进行清理
  算法分为标记和清除阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。它是最基础的收集算法,效率也很高,但是会带来两个明显的问题:
  效率问题
  空间问题(标记清除后会产生大量不连续的碎片)
  2复制算法
  为了解决效率问题,复制收集算法出现了。它可以将内存分为大小相同的两块,每次使用其中的一块。当这一块的内存使用完后,就将还存活的对象复制到另一块去,然后再把使用的空间一次清理掉。这样就使每次的内存回收都是对内存区间的一半进行回收。
  优点:执行效率高
  3标记整理算法
  分为3步:
  先从堆内存中判断已经不再使用的对象,进行标记
  将存活的对象进行移动,放在一起
  将标记的对象一一清除
  缺点:执行效率低
  优点:堆内存空间是连续的
  根据老年代的特点特出的一种标记算法,标记过程仍然与标记清除算法一样,但后续步骤不是直接对可回收对象回收,而是让所有存活的对象向一段移动,然后直接清理掉端边界以外的内存。
  4分代收集算法:
  针对不同的堆内存空间的划分采用具体的算法
  新生代:eden区,s1区,s2区
  老年代:存放存活时间久的和大的数组对象
  当前虚拟机的垃圾手机都采用分代收集算法,这种算法没有什么新的思想,只是根据对象存活周期的不同将内存分为几块。一般将java堆分为新生代和老年代,这样我们就可以根据各个年代的特点选择合适的垃圾收集算法。
  比如在新生代中,每次收集都会有大量对象死去,所以可以选择复制算法,只需要付出少量对象的复制成本就可以完成每次垃圾收集。而老年代的对象存活几率是比较高的,而且没有额外的空间对它进行分配担保,所以我们必须选择标记清除或标记整理算法进行垃圾收集。
  5。1。3垃圾回收器说明
  1。CMS收集器
  CMS(ConcurrentMarkSweep)收集器是一种以获取最短回收停顿时间为目标的收集器。它而非常符合在注重用户体验的应用上使用。
  CMS(ConcurrentMarkSweep)收集器是HotSpot虚拟机第一款真正意义上的并发收集器,它第一次实现了让垃圾收集线程与用户线程(基本上)同时工作。
  从名字中的MarkSweep这两个词可以看出,CMS收集器是一种标记清除算法实现的,它的运作过程相比于前面几种垃圾收集器来说更加复杂一些。整个过程分为四个步骤:
  初始标记:暂停所有的其他线程,并记录下直接与root相连的对象,速度很快;
  并发标记:同时开启GC和用户线程,用一个闭包结构去记录可达对象。但在这个阶段结束,这个闭包结构并不能保证包含当前所有的可达对象。因为用户线程可能会不断的更新引用域,所以GC线程无法保证可达性分析的实时性。所以这个算法里会跟踪记录这些发生引用更新的地方。
  重新标记:重新标记阶段就是为了修正并发标记期间因为用户程序继续运行而导致标记产生变动的那一部分对象的标记记录,这个阶段的停顿时间一般会比初始标记阶段的时间稍长,远远比并发标记阶段时间短
  并发清除:开启用户线程,同时GC线程开始对为标记的区域做清扫。
  从它的名字就可以看出它是一款优秀的垃圾收集器,主要优点:并发收集、低停顿。但是它有下面三个明显的缺点:
  对CPU资源敏感;
  无法处理浮动垃圾;
  它使用的回收算法标记清除算法会导致收集结束时会有大量空间碎片产生。
  2。G1收集器
  G1(GarbageFirst)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器。以极高概率满足GC停顿时间要求的同时,还具备高吞吐量性能特征。
  被视为JDK1。7中HotSpot虚拟机的一个重要进化特征。它具备一下特点:
  并行与并发:G1能充分利用CPU、多核环境下的硬件优势,使用多个CPU(CPU或者CPU核心)来缩短StopTheWorld停顿时间。部分其他收集器原本需要停顿Java线程执行的GC动作,G1收集器仍然可以通过并发的方式让java程序继续执行。
  分代收集:虽然G1可以不需要其他收集器配合就能独立管理整个GC堆,但是还是保留了分代的概念。
  空间整合:与CMS的标记清理算法不同,G1从整体来看是基于标记整理算法实现的收集器;从局部上来看是基于复制算法实现的。
  可预测的停顿:这是G1相对于CMS的另一个大优势,降低停顿时间是G1和CMS共同的关注点,但G1除了追求低停顿外,还能建立可预测的停顿时间模型,能让使用者明确指定在一个长度为M毫秒的时间片段内。
  G1收集器的运作大致分为以下几个步骤:
  初始标记
  并发标记
  最终标记
  筛选回收
  G1收集器在后台维护了一个优先列表,每次根据允许的收集时间,优先选择回收价值最大的Region(这也就是它的名字GarbageFirst的由来)。这种使用Region划分内存空间以及有优先级的区域回收方式,保证了GF收集器在有限时间内可以尽可能高的收集效率(把内存化整为零)。
  总结:
  堆内存细化4块空间:
  新生代:eden,s1,s2
  老年代:Generation
  不同的空间采用的算法
  不同的垃圾回收算法特点
  CMS和G1垃圾回收器的区别
  5。2JDK8新特性(大家查下看下)
  Stream流
  lambda表达式
  接口改变
  新的日期api
  等等其余6个
  2。javaweb(1)
  2。1javaweb三大组件:Servlet,Filter,Listener
  Servlet作用:接收请求和响应数据到客户端。
  Filter作用:拦截请求和响应。场景:处理全局的中文乱码问题,权限校验,加载配置文件等操作
  实现拦截资源:静态资源(html,css,js,图片等等)和动态资源(后台与客户端交互的类,比如:controller)都会拦截
  配置拦截路径:1。资源名称2。拦截所有资源3。。扩展名,比如:。html,
  Listener作用:监听对象状态的改变,以及加载配置文件。
  2。2Servlet特点,线程是否安全
  2。3Filter过滤器作用是什么,后面学习的springmvc有什么关系,和springmvc的拦截器的区别?
  自定义过滤器:实现Filter接口,
  有个方法doFilter(req,response):拦截请求和响应,放行:Filterchain对象放行方法
  SpringMVC大量用到了过滤器,
  比如:CharacterEncodingFilter,处理乱码问题,以及加载springmvc的配置文件。
  过滤器和springmvc的拦截器有关系有什么区别?
  过滤器是web是三大组件之一,基于web开发环境(web项目)。
  springmvc的拦截器和过滤器没有关系,拦截器实现基于代理(默认jdk动态代理)方式实现的。
  2。4Listener的分类,作用是什么,后期那些框架里面用到了监听器?
  自定义一个监听器:实现Listener接口
  监听器:分为三大类,八个监听器。
  监听器:在spring框架里面,springmvc框架里面使用,springboot框架里面。
  比如:spring框架,使用ContextLoaderListener在web服务器启动时,读取spring配置文件,初始化bean对象,装配到spring容器中(ConCurrentHashMap)2。5Cookie和Session区别以及使用场景?3。ssmspringbootspringCloud(1。5)4。企业开发的项目:技术说明(1。5)5。面试总结(3,4)

特斯拉降价效果来了1月销量大涨,而国产新能源车企狂跌众所周知,2023年一开年,马斯克就给新能源汽车市场打了一剂猛药,来了一次大降价。当时很多人吐槽称,降价也救不了特斯拉,那实际呢?2023年1月特斯拉在中国市场销量660……家宴准备几道美味佳肴,大人孩子都爱吃【红酒焖猪蹄】用料猪蹄三只、葱段、姜段、红酒、花椒、宴友食用油、红椒、八角、料酒、酱油、盐做法1将葱切大段。2将姜去皮后切大片。3烧热一锅水……智能手机冷冬,折叠屏手机小阳春2022年对于智能手机行业来说,可以用清淡二字形容。比起早年间的风光无量,在经历手机品牌多年的迅猛教育下,多数国家的智能手机普及率已超50,俨然一副熟透了的感觉。德……让孩子感受中华传统文化的魅力!TA们一同猜灯谜做游戏为营造良好的元宵佳节文化气氛,丰富社区居民文化生活,进一步促进社区和谐,2月3日,临汾路街道景凤路520弄居民区新时代文明实践站开展我们的节日元宵文化文艺活动。活动现场,小朋友……点对万物应对乌卡时代的以太坊经验乌卡时代的复杂性、模糊性、不稳定性、不确定性已经成为当下每个人都必须面对的重要难题。这个时代的一切都处于未知之中,不能利用现有的理论进行推演,也不能采取目前的思维进行分析,更没……张本智和24,无缘三冠王内战王夺得男单冠军1月29号,日本乒乓球全锦赛男单决赛,张本智和迎战户上隼辅,张本智和24输球。内战王户上隼辅夺得了日本全锦赛男单冠军。第一局,户上隼辅以72拉开比分,张本智和追到了78,……前恒大铁腰加盟泰山!93后腰队长替换廖力生!曾单场造2个点球北京时间1月28日,中超豪门山东泰山队再次传来了更换孙准浩后腰搭档的消息,去年仓促加盟山东泰山队的廖力生不出意外的话,他的下家将是梅州客家队,随着廖力生的离队,泰山队的新后腰人……苹果进军中国智能家居市场,一小口还是一大口?2023年1月,苹果在国内官网上线了家居板块,正式进军中国智能家居市场。苹果这一动作引发业界无尽猜想:2022年股价累计下跌27后,智能家居能否成为苹果撬动增长的密码?龙争虎斗……去年,中国人均吃掉26公斤海鲜作者罗盈盈根据马蜂窝发布的《2021年国庆节旅游数据报告》,以美食为主题的出游是国庆黄金周各地民众的主要选择之一,在这其中,海鲜党占得半边天。随着居民收入水平持续提升,以……澳大利亚主帅压力都在日本那边,他们三场比赛只赢了一场直播吧10月10日讯澳大利亚将在北京时间10月12日18:14迎战他们12强赛第4轮对手日本队。澳大利亚主帅格拉汉姆阿诺德接受澳大利亚媒体采访,谈到了对本场比赛的看法。阿……波音公司星际飞船出现故障,飞行计划延期波音星际飞船在2019年12月进行的无人试飞计划中,飞船出现了几处故障,导致其无法继续与国际空间站对接的原计划。波音公司原计划在今年的7月份再次进行尝试,执行轨道飞行测试……2022沈阳房产新政,改善购房者必读2022。12。12星期一天气:多云本期要闻【小二说】2022沈阳房产新政,改善购房者必读!【榜单】111月沈阳住宅项目销售排行榜【政策】辽宁:真金白银……
就在今晚,油价又有新变化油价马上又要调整!9月6日24时国内成品油价将迎上调。需要加油的小伙伴们,下班抓紧时间去加油根据国家发改委消息,新一轮成品油调价窗口将于今天(9月……2022年换手机首选这4款,运行速度快价格很良心,轻松使用四2022年换手机首选这4款,运行速度快价格很良心,轻松使用四五年第一款:小米12SUltra后置三摄,5000万像素主摄镜头4800万潜望式长焦镜头4800万像素超……海法马卡比vs尤文图斯斑马军团能否重回正轨?阿莱格里的关键时赛季前我认为尤文图斯今年开局不会很好,但他们糟糕的成绩超出了我的预期。我什至不记得上一次斑马军团如此沮丧是什么时候了。联赛输给米兰,欧冠输给巴黎很正常。不是尤文图斯今天能出战的……官宣贝克汉姆次子参加英超球队训练,本周末将在友谊赛中亮相北京时间10月11日,英国媒体的消息,前英格兰队功勋球员大卫贝克汉姆的次子罗密欧贝克汉姆已经来到英超的布拉德福德B队参加训练。此前,他效力于北美足球大联盟的迈阿密国际队,并在预……深入浅出HTTPS(详解版)原文链接:https:www。cnblogs。comhuanskyp13977181。html前言1990年互联网诞生之初,就已经开始用超文本传输协议HTTP传输数……首次澳大利亚深海调查中,研究人员发现了令人难以置信的海洋生物一组科学家最近探索了澳大利亚的深海这就是他们的发现。年5月,来自7个国家的40名科学家乘坐调查员号出发,探索世界上从未有过的地方:海洋表面以下14,000英尺的黑暗和冰冷……8省区网媒大联动我在边疆望北京云南内蒙古为家乡连麦从峡谷到平原,从雪域到草原从森林到山岭,从沙漠到海岸G331和G219依偎着祖国的陆地边境线串起的不仅仅是一路风光还有8个边疆省区对祖国的深深爱恋……李宗盛狠心抛弃发妻,婚内恋上林忆莲,花甲之年再娶小27岁娇妻唱最深情的歌做最渣的男人李宗盛婚内爱上林忆莲,并追到加拿大去求爱,被抛弃的发妻朱卫茵为何说不恨林忆莲?朱卫茵是李宗盛的第一任妻子,两人是通过他人介绍认识的,不久后就……世界杯足球战争因输一球,俩小国血战5天,打成世界特危险国家作为体育迷四年一度的节日,世界杯在全球的热度比奥运会还高,是当之无愧的人类第一盛会。世界杯不仅仅代表着足球,在世界杯期间,全球消费市场火热,餐饮业也迎来四年一度的高峰,各……华硕Zenfone9小屏旗舰30瓦快充骁龙8Gen15499外观5。9英寸1080POLED挖孔屏,最高120赫兹刷新,240赫兹触控采样率,局部巅峰亮度1100nit,支持HDR10,康宁大猩猩玻璃Victus,像素密度466,……摩托罗拉s30pro手机配置曝光,使用骁龙8处理器,重量是1摩托罗拉这次要发布x30pro,还有一款s30Pro,简单看看消息吧。x30pro已经曝光设计和配置了,这次是手机屏幕上下边框是一样的,后置摄像头主摄明显很大,这是一枚两……海岛小城装上新引擎,渔民上岸实现安稳的幸福封面新闻记者张越熙临近元旦假期,嵊泗海岛上的沙滩变得热闹起来。新十条政策发布后,不少年轻人选择非著名景点,以安静、清闲的方式度过元旦假期。一分岛礁九九海的海岛小城浙江嵊泗……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网