猿问

kotlin可以继承java类吗

kotlin可以继承java类吗


慕盖茨9453107
浏览 82回答 2
2回答

手掌心

kotlin入门-类和继承创建类的实例要创建一个类的实例,我们就像普通函数一样调用构造函数:val invoice = Invoice()val customer = Customer("Joe Smith")注意 Kotlin 并没有 new 关键字。继承在 Kotlin 中所有类都有一个共同的超类 Any,这对于没有超类型声明的类是默认超类class Example // 从 Any 隐式继承Any 不是 java.lang.Object;尤其是,它除了 equals()、hashCode()和toString()外没有任何成员。要声明一个显式的超类型,我们把类型放到类头的冒号之后:open class Base(p: Int)class Derived(p: Int) : Base(p)类上的 open 标注与 Java 中 final 相反,它允许其他类 从这个类继承。默认情况下,在 Kotlin 中所有的类都是 final, 对应于 Effective Java书中的 第 17 条:要么为继承而设计,并提供文档说明,要么就禁止继承。 

红颜莎娜

上代码,其实就是在gradle中加入kotlin的插件就好了.首先是project 的gradle文件buildscript {ext.kotlin_version = "1.0.1" //加上这个,至于为什么是1.0.1待会解释repositories {jcenter()}dependencies {classpath 'com.android.tools.build:gradle:2.1.0-alpha4'//这个不用管classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"//加上这个⬆️}}然后是module的gradle文件apply plugin: 'com.android.application'apply plugin: 'kotlin-android' //加上插件...dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')...compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" //加上库}代码是在android中运行的kotlin代码data class Student(val name:String,val sex:Char,val age:Int,val course:Array<String>){}java调用代码public void demo() {Student[] students = new Student[]{new Student("x1",'男',14,new String[]{"数学","语文"}),new Student("x2",'女',15,new String[]{"英语","语文"}),new Student("x3",'男',16,new String[]{"化学","语文"}),new Student("x4",'女',17,new String[]{"物理","语文"}),};for (Student student : students) {Log.v(TAG,student.toString());}}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Kotlin
我要回答