Kotlin(十三)之Kotlin调用java

属性

  1. Kotlin调用属性本质就是调用getter和setter方法,因此只要java提供setter、getter方法,kotlin就可以直接读取或者写入
  2. 如果getter方法的返回值类型是boolean,并且该getter方法名以is开头,此时Kotlin会将其当作属性名与getter方法同名的属性,比如boolean isFlag 可以作为Kotlin的只读属性,该属性名为isFlag

方法

  1. 如果java方法的返回值是void,在Kotlin中对应于Unit返回值类型。如果有人使用其返回值,它将由 Kotlin 编译器在调用处赋值, 因为该值本身是预先知道的(是 Unit)。

  2. Kotlin的关键字比java多,很多关键字在java中并不是关键字,所以可能出现java的类、接口名、方法名是Kotlin关键字的情况,此时需要加反引号对关键字进行转译

    java类
    public class User {
         
        private String userName;
        private boolean isMarried;
        protected int age;
    
        public void in() {
         
            System.out.println("in run...");
        }
        public String getUserName() {
         
            return userName;
        }
    
        public void setUserName(String userName) {
         
            this.userName = userName;
        }
    
        public boolean isMarried() {
         
            return isMarried;
        }
    
        public void setMarried(boolean married) {
         
            isMarried = married;
        }
    
        public int getAge() {
         
            return age;
        }
    
        public void setAge(int age) {
         
            this.age = age;
        }
    }
    
    kotlin中调用
    fun main(args: Array<String>) {
         
        val user = User()
        user.userName = "jannal"
        user.isMarried = true
        println(user.userName)
        println(user.isMarried)
        //in在kotlin中是关键字,所以在kotlin中需要调用in()需要转译(``)
        user.`in`();
    }
    

类型

  1. Kotlin为java部分类提供了一些处理,这部分java类被映射为Kotlin类,这种映射只在编译阶段发生,运行时还是java类型。这些 Java 类型的静态成员不能在相应 Kotlin 类型的伴生对象中直接访问。要调用它们,请使用 Java 类型的完整限定名,例如 java.lang.Integer.toHexString(foo)

  2. <
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值