Android 中 Java 和 Kotlin的区别及示例
Kotlin :Kotlin是一种跨平台、静态类型、具有类型推断的通用编程语言。KOTLIN 旨在与 java 完全互操作,但类型推断允许其语法更简洁。KOTLIN 由 JetBrains 和 Google 通过 Kotlin 基金会赞助。
JAVA :JAVA 是一种面向对象的编程语言,由 SUN MICRO SYSTEMS 的 JAMES GOSLING 及其同事于 1991 年开发。该语言最初称为 OAK。它是作为一种成熟的编程语言开发的,可以完成相同类型的任务并解决其他编程语言(如 BASIC、C++ 等)可以完成的类似问题。
在 Android 中使用 Kotlin 和 Java 语言
将 Kotlin 引入 Android 发展的最主要原因是减少代码行数,使开发准备更加方便。使用 Java 可以完成的所有事情都可以使用 Kotlin 进行 Android 开发。
不需要 findViewByIds :它用于查找具有给定 ID 的第一个后代视图。
java示例代码:
TextView text = (TextView) findViewById(R.id.textView);
text.setText("Hello World");
java示例代码:
textView.setText("Hello World")
无空指针异常 : NullPointerExceptions
是 Java 设计人员非常失望的根源。在 Kotlin 中,默认情况下所有排序都是不可为空的(不能保存空值)。如果代码尝试在 Kotlin 中使用或返回 null
,则会显示编译时错误。
var a: String = "abc"\n// compilation error
a = null
数据类 :我们经常创建类来保存一些数据。在这样的类中,一些标准函数通常可以从数据中导出。在 Kotlin 中,这种类型的类称为数据类,并被标记为数据。
data class User(val name: String, val age: Int)
根据它们的功能,这两种语言有很多区别:
特点 | Kotlin | Java |
---|---|---|
扩展函数 | 在Kotlin中已经有 | java中需要创建类 |
Null Safety | 它在 Kotlin 中可用 | 它在 Java 中不可用 |
静态成员 | Kotlin 没有类的静态成员 | 它在 Java 中可用 |
字符串模板 | Kotlin 中有两种类型的字符串字面量 | Java 也有,但它不支持像 Kotlin 那样的表达式 |
通配符类型 | Kotlin 中不可用 | Java 中可用 |
智能广播 | Kotlin 中可用 | 在 Java 中不可用 |
无检查异常 | Kotlin 完全去掉了 | 异常在 Java 中是有问题的 |
运算符重载 | Kotlin 允许用户提供一种调用函数的方法 | 运算符与特定的 Java 类型相关联 |
构造函数 | 有主构造函数和次构造函数构造函数 | 可以用来带参数初始化属性 |
- 类型系统 提供可空性支持、类型推断和通用保护 还有其他种类的引用类型与类的基本概念有关