摘要:简介 简化setOnClickListener() 我将使用Android中的一个典型示例说明这一方法的工作原理:View.setOnClickListener()方法。如果我们想在Java中实现单击侦听器行为,我们首先需要编写OnClickListener接口 然后编写一个实现此接口的匿名类: 将
阅读全文
摘要:还需要再加个 implementation "androidx.room:room-runtime:$rootProject.roomVersion" plugins { id "com.diffplug.gradle.spotless" version "3.13.0"} 还需要再加个 该插件用于
阅读全文
摘要:/** * 主构造函数至少包含一个参数 * 所有的主构造函数的参数必须标识为val 或者var * 数据类不可以声明为abstract open、sealed或者inner * 数据类不能继承其他类,但是可以实现接口 */ //关键字为data data class User(val name:String,val age:Int){ // fun copy(name: St...
阅读全文
摘要:使用interface关键字定义接口,允许方法有默认实现 一个类或者对象可以实现一个或多个接口 接口中的属性只能是抽象的并且不能被初始化,实现接口时必须重写属性 fun main(args:Array<String>){ val c = Child() c.foo() c.bar() println
阅读全文
摘要:在基类中,使用fun声明函数时,此函数默认修饰符为final,不能被子类重写。如果允许子类重写,就添加open修饰它,子类重写方法使用 override open class Personage(name: String){ constructor(name: String,age: Int):th
阅读全文
摘要:如果子类没有主构造函数,则必须在每一个二级构造函数中使用super关键字初始化基类 open class Personage(name: String){ constructor(name: String,age: Int):this(name){ println("基类次级构造函数") } } /
阅读全文
摘要:如果一个类要被继承,可以用open关键字进行修饰 Kotlin中的类可以有一个主构造器,以及一个或多个构造器,主构造器是类头部的一部分,位于类名称之后
阅读全文
摘要:函数定义使用fun关键字,参数格式为 参数:类型 fun greet( ){ println("hello name") } 表达式作为函数体返回,返回类型自动推断 fun sum1(a:Int,b:Int)=a+b 表达式作为函数体返回,public则必须写明返回类型(验证不写明返回类型也可以)
阅读全文
摘要:/** * Kotlin程序文件以.kt结尾,类名可以不跟文件名相同 * * 为什么选择kotlin * 简洁:大大减少样板代码的数量 * 安全:避免空指针异常等整个类的错误 * 互操作性:充分利用JVM、Android和浏览器的现有库 * 工具友好:使用任何java IDE或者使用命令行进行构建 * */ class Greeter(val name:String){ ...
阅读全文
摘要:查看操作系统是32位的还是64位的 在控制台输入:sudo uname --m 回车后: 如果显示i686,则表示安装了32位操作系统如果显示 x86_64,则表示安装了64位操作系统 如果想知道更多信息可以试试如下命令 sudo uname --s 显示内核名字sudo uname --r 显示内
阅读全文