面试官: Kotlin为何会火起来,有什么特色,跟Java区别
心理分析:面试官所在的项目是用Kotlin 开发的,Kotlin是一门语法,也不会问的比较深,国内的开发者对Kotlin认识度不是很高,因此面试官不会强求问这些问题,只是作最基本的了解
求职者: 对于Kotlin的优缺点,和java的不一样必定要熟记于心
一丶 为何不少开发者从Java转到kotlin?谈谈它的优点
- kotlin比Java要简单。它去除了不少Java里面的冗余代码。kotlin提供了不少Java不具备的特性。
- kotlin比较容易学,由于它跟Java很接近。
- kotlin是功能性编程语言,是基于jvm上的。
- kotlin的代码更易读,更容易理解
若是你不懂Kotlin的话 接下来只能靠背了
二丶解释一下什么是extension函数
extension函数用来对class的扩展,而不须要从class进行派生。java
- 直接修改类的源代码进行功能扩充(固然前提是你能够修改源码,若是该类是别人写的或者说是库和框架提供的,这种方式直接就凉凉)
- 继承,在子类中添加相关方法
- 使用装饰模式,动态扩展对象的功能
三丶kotlin中的null safety是什么意思?
- 对于 Null 的检查是 Kotlin 的特色之一。强制你在编码过程当中考虑变量是否可为 null,所以能够避免不少在 Java 中隐藏的 NullPointerException。
- null safety的特性是为了去除null pointer exception在实时运行中的出现风险。它也用来区分空引用和非空引用。
四丶为何kotlin跟Java具备互相的操做性?
由于这两门语言,对于jvm来讲没有区别。它们都是编译成byte code, 而后在jvm上运行的面试
五丶有哪些特色, 是kotlin有,可是Java没有?
-
null safety.express
- Operator overloading.
- Coroutines.
- Range expressions.
- Smart casts.
- Companion objects.
六丶 kotlin中的抽象有什么做用?
抽象是面向对象编程中最重要的概念。抽象类的特色是,你知道这个类会有什么功能,可是你不知道它具体如何实现这些功能和实现哪些功能。编程