Java面试技巧之2021年

Java面试技巧之2021年,第1张

Java面试技巧之2021年

开场白:

首先说一下自我介绍--》

考官好,我是此次的应聘者xxx,我此次应聘的职位是Java开发工程师,工作这几年的切身体会是选对专业真的很重要,与薪资和生活挂钩,促使自己成长吧!现在主要我就从以下三个方面介绍一下自己:
1)学习能力:一直处于学习的路上,以前不会linux,Aix *** 作系统以及一些前端技术Vue,报表工具fineReport,都是在工作的时候,需要用到这些时,就使劲学,一边工作一边学习,在平常开发,测试阶段多钻研,然后在上生产的时候就能熟练的进行 *** 作了。
2)实践能力:本身也算是科班出身,从上学时代的C语言过来的,然后从实习到正式参与工作一直都在小公司,这样一来人肯定会身兼多职吧,开发,测试,部署,写文档可能都需要自己完成,所以在这样的环境下,各方面的实践能力都有锻炼到,收获很多。参与过的项目大大小小有很多了,主要的一些大型项目有,如远程医疗系统,密服系统等等。
3)交际能力:我的性格沉稳,能坐得住,对IT行业的工作,具有非常好的适应能力,而且为人谦和,虚心学习的态度。对工作有热情,富有的事业心和责任感使我能够面对工作中的困难和挑战。
从以上的简单自我介绍,我希望公司能给我一个展示自己能力的机会,让我可以学以致用,同时我也很欣赏_公司的企业文化与工作环境。我愿意成为企业一员,为企业的发展贡献自己的一份力量。我的职业生涯目标是,做一个既懂技术,又懂业务的复合型人才。

一、Java方面

1.怎么理解面向对象?

面向对象 ( Object Oriented ) 是将现实问题构建关系,然后抽象成 类 ( class ),给类定义属性和方法后,再将类实例化成 实例 ( instance ) ,通过访问实例的属性和调用方法来进行使用。它相对于面向过程,面向过程显得更为直接,比如C语言就是面向过程的,好处是快,非常快,没有一丝废话,该干嘛就干嘛,缺点就是不容易扩展,不容易维护。当然我们平常用的Java作为面向对象,又具有三大特征:封装,继承,多态,这样就更易于扩展维护。

2.String,StringBuffer,StringBuilder有什么区别?

  •  2.1执行速度的快慢上
  •   顺序依次为:StringBuilder > StringBuffer > String
  •   原因:String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦    创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的。Java中对String对象进       行的 *** 作实际上是一个不断创建新的对象并且将旧的对象回收的一个过程,速度很慢。
  •   StringBuilder和StringBuffer的对象是变量,对变量进行 *** 作就是直接对该对象进行更改,而不进    行创建和回收的 *** 作,所以速度要比String快很多。
  •   注:StringBuffer和StringBuilder 改变对象常用到的方法有:append()
  • 2.2线程方向
  •  StringBuffer 线程安全的  
  •  StringBuilder 线程不安全的
  • 原因:StringBuffer 的所有公开方法都是 synchronized 修饰的,而 StringBuilder 是没有对方法加锁同步的,所以毫无疑问,StringBuilder 的性能要远大于 StringBuffer。StringBuffer 适用于用在多线程 *** 作同一个 StringBuffer 的场景,如果是单线程场合 StringBuilder 更适合。
  • 2.3总结
  • String:适用于少量的字符串 *** 作的情况
  • StringBuilder:适用于单线程下在字符缓冲区进行大量 *** 作的情况
  • StringBuffer:适用多线程下在字符缓冲区进行大量 *** 作的情况

3. MyBatis的缓存

  • 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。
  • 二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定义存储源,如 Ehcache。
  • 对于缓存数据更新机制,当某一个作用域(一级缓存Session/二级缓存Namespaces)的进行了 C/U/D *** 作后,默认该作用域下所有 select 中的缓存将被clear。
  • 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持。

 

4.线程?

5.IOC和AOP?

6.MyBatis缺点?

7.String和SringBoot什么联系?

8.线程的生命周期?

9.SpringCloud微服务

10.乐观锁和悲观锁

11.

二、数据库方面

三、前端方面

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5635178.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存