kotlin学习Day1:JavaActivity和KotlinActivity对比分析

来源:互联网 发布:java上传图片到ftp 编辑:程序博客网 时间:2024/06/05 08:38

kotlin包的定义
包名应该定义为源文件的最上面,所有其它的内容如函数或者类等都要在包名的下面(和Java一样)使用package关键字:

我们新建一个JavaActivity文件和KotlinActivity观察包的部分不难发现:

Java:package lbjfan.kotlin.demo;(==分号结尾==)Kotlin:package lbjfan.kotlin.demo(==没有分号==)

包的导入均使用import关键字:

Java:import android.app.Activity;(分号结尾)Kotlin:import android.app.Activity(没有分号)

类的继承:
Java继承使用extends关键字,如:

public class JavaActivity extends Activity

Kotlin则使用:表示:

class KotlinAcativity : Activity

方法重写:

Java使用@Override在方法上面申明,如:    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }
Kotlin则使用Override在方法前面申明,如:override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_kotlin)    }

观察上面Java和kotlin方法重写中所传参数的差异,我们来理解变量定义:

Java中变量的定义:

1)数据类型 变量名 如:int a;2)数据类型 变量名=初始值 如:int a = 1;

Java中常量的定义,采用final关键字:

final 变量类型 常量值 如:int a = 1;

Kotlin中变量的定义,采用var关键字:

1)申明数据类型:var 变量名:数据类型 = 值,如:var a:Int = 1;2)不申明数据类型:var 变量名 = 值;如:var a=1;(系统会根据初始值识别变量的数据类型)

Kotlin中常量的定义,采用val关键字:

1)申明数据类型:val 常量名:数据类型 = 值,如:val a:Int = 1;2)不申明数据类型:val 常量名 = 值;如:val a=1;
**不管是定义变量还是常量,如果初始化的时候不赋值,则必须指定其数据类型**

至于上面重写方法onCreate()里的参数则是申明了一个Bundle类型的称为savedInstanceState的对象,?则告诉编译器该对象可以为空。

至此,我们简单了解了Kotlin的相关知识,并和Java代码进行了对比分析,读者可以自行使用体会。

原创粉丝点击