【第四阶段】kotlin语言的定义类和field关键字学习

这篇具有很好参考价值的文章主要介绍了【第四阶段】kotlin语言的定义类和field关键字学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.普通成员变量背后隐士代码
为什么在kotlin中是private 可以直接调用,隐式代码如下

package Kotlin.Stage4

class Test54{
    var name="kotlin"
    /*背后做的事

    @NotNull
    private String name="kotlin";
    public void setName(@NotNull String name){
           this.name=name;
    }
    @NotNull
    public void getName(){
           return this.name;
    }

     */
}

fun main() {
    //背后隐士代码new Test54().setName("java")
    Test54().name="java"
    //背后隐士代码System.out.println(new Test54().getName() )
    println(Test54().name)
}

val只有get方法 不能set
2.field关键字文章来源地址https://www.toymoban.com/news/detail-732316.html

package Kotlin.Stage4

class Test54_field{
    var info="abc and def"
        //下面的隐式代码 不写也有,就是下面的样子
  /*  get() = field
    set(value) {
        field =value
    }*/
        get() = field.capitalize()//获取时把首字母修改为大写
        set(value) {
            field ="[---${value}---]"
        }
    /* 背后做的事情
      @NotNull
    private String info="abc and def";
    public void setInfo(@NotNull String info){
           this.info="[---"+"info+"---]";
    }
    @NotNull
    public void getName(){
           return StringKT.capitalize(this.info);
    }
    */


}


fun main() {
    //背后隐式代码new Test54_field().setInfo("java")
    Test54_field().info="java"
    //背后隐士代码System.out.println(new Test54_field().getInfo() )
    println(Test54_field().info)
}

到了这里,关于【第四阶段】kotlin语言的定义类和field关键字学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 面向对象编程:深入理解抽象类和关键字

    在Java编程中,我们经常会遇到一些特殊的和概念,其中包括static、final以及抽象类等。本文将深入探讨这些和概念的作用和使用方法,并通过一个实例展示抽象类的应用。 1. 1.1 static static修饰成员变量:表示该成员变量属于类,不属于对象,所有对象共享

    2024年02月15日
    浏览(35)
  • 第1关:学习-Java类和对象之static关键字之求圆环面积和周长

    本关任务:已知圆环的大圆半径 R 和 小圆半径 r 的长度分别为 32.0 和 10.0,求该圆环的面积和周长。 圆环面积公式为:S=π(R 2−r 2 ); 圆环周长公式为:C=2π(R+r)。 /** 任务:已知圆环的大圆半径 R 和 小圆半径 r 的长度分别为 32.0 和 10.0,求该圆环的面积和周长。 类名为:Ri

    2023年04月08日
    浏览(27)
  • ES6中的Class关键字和super()方法,使用详细(class类和super()方法)

    简介:在ES6中,我们可以使用class来定义类,并通过 extends 实现类的继承,然后在子类中,我们可以使用 super() 来调用父类的构造函数;今天来分享下class的使用详细。 1、 首先,使用class,定义一个父类; 2、 然后再定义一个子类, 通过ex

    2024年02月12日
    浏览(36)
  • 【正点原子STM32】C语言重点知识(配置MDK支持C99、位操作清零置一、带参数的宏定义、头文件的条件编译和代码条件编译、关键字、结构体指针、代码规范)

    一、stdint.h简介 配置MDK支持C99 二、位操作 如何给寄存器某个位赋值(清零置一) 三、宏定义 带参数的宏定义 四、条件编译 头文件的条件编译和代码条件编译 五、extern声明 六、类型别名(typedef) 类型别名应用 七、结构体 应用举例(定义使用) 应用举例(ST源码,使用类型

    2024年02月19日
    浏览(28)
  • 关于在 Mybatis 中使用 record 关键字来定义 JavaBean

    经测试,正常情况下使用 record 是没有问题的,但若是使用了 resultMap,将会导致错误: 首先, record 类型没有 无参构造函数 ,所以在反射过程中无法创建对应类型,导致了 argument type mismatch 错误。 那如果给 record 类型的类加上无参构造函数呢? 会出现以下错误: 可以看到

    2024年02月05日
    浏览(69)
  • python中自定义异常/raise关键字抛出异常

    在编程过程中合理的使用异常可以使得程序正常的执行。有直接抛出异常的形式,也能通过捕获异常加入异常时的业务逻辑处理。 创建自定义异常类案例 使用raise抛出异常案例 raise抛出异常主要是为了在特定的条件。 在调用throw_exception函数后,传入值为10时则抛

    2024年02月03日
    浏览(44)
  • 【第三阶段】kotlin语言中的==与===比较操作

    \\\"==\\\" 内容的比较 相当于Java的equals() \\\"===\\\" 引用的比较 1.== 执行结果 2.=== 执行结果

    2024年02月12日
    浏览(22)
  • 【第三阶段】kotlin语言的内置函数takeif

    执行结果

    2024年02月11日
    浏览(27)
  • 【C语言】for 关键字

    🚩WRITE IN FRONT🚩    🔎介绍:\\\"謓泽\\\"正在路上朝着\\\"攻城狮\\\"方向\\\"前进四\\\"🔎 🏅荣誉:2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2022博客之星TOP100|TOP63、阿里云专家博主、掘金优秀创作者、全网粉丝量5w+、全网访问量70w+🏅 🆔本文章内容由 謓泽 原创 如需相关转载

    2023年04月17日
    浏览(20)
  • C语言volatile关键字

    在C语言中, volatile 是一个类型修饰符,用于告诉编译器对象的值可能会在编译器无法检测到的情况下被改变。这通常发生在以下两种情况: 硬件的输入/输出操作,例如一个设备寄存器的读取或写入。 共享内存的并行程序,其中一个线程修改了一个内存位置,而另一个线程

    2024年02月07日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包