Android修行手册之Kotlin-【Get和Set】、【继承】、【抽象类/嵌套类/内部类】篇

简介: 众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!

👉关于作者

众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣 !!!

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

有什么需要欢迎私我,交流群让学习不再孤单

👉前提

当前环境

2021年10月8日最新下载2020.3.1 Patch 2 版本

👉实践过程

😜Get和Set

其实Kotlin声明实体类之后,里面的变量默认就带有set和get的属性功能了。除非想要特殊业务内容。

比如set需要结合项目进行其他业务处理,get也是同样的道理。

【filed】是系统内置的一个关键字,算是中间变量

除了这些

var name: String? = null
        set(value) { //value随意起名
            field = value  //这个field是系统内置的 用在get
        }
        get() {
            return field + "这是返回"
        }
var urlJUEJIIN: String? = null
        get() =field+"这是只有get"
var urlCSDN: String? = null
var urlList: List<String>? = null
复制代码

😜继承

在Java中可以说所有的类都继承自Object,而在Kotlin中可以说所有的是继承自Any类。

在Java中继承使用关键字【extends】,而在Kotlin中使用【:】(英文冒号)

除此之外,不管是方法重写还是属性变量重写,前面都加上【override】关键字,这一点和Java一样

class EntityTwo : Entity {
    constructor() {
    }
    constructor(name: String) : this(name, 0) {
    }
    //不同参数的次要构造函数
    constructor(name: String, age: Int) : super(name, age) {
        Log.e("TAG,", "执行了子类构造器$name===$age")
    }
}
复制代码

😜接口

这点也和Java类似,使用【interface】定义,使用上也没差距

修饰类的关键字有

  • abstract    // 说明该类为抽象类
  • final       // 说明该类为类不可继承,默认属性
  • enum        // 说明该类为枚举类
  • open        // 说明该类为类可继承,类默认是final的
  • annotation  // 说明该类为注解类

访问权限的修饰符有:

  • private    // 访问权限-仅在同一个文件中可见
  • protected  // 访问权限-同一个文件中或子类可见
  • public     // 访问权限-所有调用的地方都可见
  • internal   // 访问权限-同一个模块中可见

经过学习和试验验证,小空决定还是用Java的实体类吧,反正他们有互操作性。

😜抽象类/嵌套类/内部类

小空带大家直接用实例来看明白

abstract class EntityThree {
    abstract fun methonOne()
}
//嵌套类实例
class One {                  // 这是外部类
    private val age: Int = 1
    class Two {             // 这是在类里面的类,叫做嵌套类
        fun hello() {
        }
        fun hi() = 3
    }
}
//内部类使用关键字inner
class Three {
    inner class Four { //这个Four类是内部类
        fun hello() {
        }
        fun hi() = 3
    }
}
//这是引用示例
var one = Three().Four().hello()


👉其他

📢作者:小空和小芝中的小空

📢转载说明-务必注明来源:

https://zhima.blog.csdn.net/

https://www.zhihu.com/people/zhimalier

https://juejin.cn/user/4265760844943479

📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

相关文章
|
20天前
|
Kotlin
Kotlin教程笔记(20) - 枚举与密封类
Kotlin教程笔记(20) - 枚举与密封类
36 8
|
21天前
|
Java Kotlin
Kotlin教程笔记(12) - 面向对象之继承与实现
Kotlin教程笔记(12) - 面向对象之继承与实现
26 4
|
21天前
|
Java Kotlin
Kotlin教程笔记(13) - 类及成员的可见性
Kotlin教程笔记(13) - 类及成员的可见性
32 3
|
21天前
|
存储 前端开发 Java
Kotlin教程笔记(18) - 数据类
Kotlin教程笔记(18) - 数据类
|
24天前
|
Java 开发者 Kotlin
Kotlin教程笔记(2) - 类与构造器
Kotlin教程笔记(2) - 类与构造器
24 1
|
26天前
|
Java Kotlin
​ Kotlin教程笔记(13) - 类及成员的可见性
​ Kotlin教程笔记(13) - 类及成员的可见性
|
24天前
|
数据安全/隐私保护 Kotlin
Kotlin教程笔记(7) - 类成员
Kotlin教程笔记(7) - 类成员
|
安全 Java Android开发
【Android 逆向】类加载器 ClassLoader ( Android 的八种类加载器 | ClassLoader | BaseDexClassLoader | DexClassLoader )
【Android 逆向】类加载器 ClassLoader ( Android 的八种类加载器 | ClassLoader | BaseDexClassLoader | DexClassLoader )
245 0
【Android 逆向】类加载器 ClassLoader ( Android 的八种类加载器 | ClassLoader | BaseDexClassLoader | DexClassLoader )
|
Java Android开发
【Android 逆向】类加载器 ClassLoader ( 类加载时机 | 隐式加载 | 显示加载 | 类加载步骤 | 装载 | 链接 | 初始化 )
【Android 逆向】类加载器 ClassLoader ( 类加载时机 | 隐式加载 | 显示加载 | 类加载步骤 | 装载 | 链接 | 初始化 )
202 0
【Android 逆向】类加载器 ClassLoader ( 类加载时机 | 隐式加载 | 显示加载 | 类加载步骤 | 装载 | 链接 | 初始化 )
|
Java Android开发
【Android 逆向】类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )
【Android 逆向】类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )
245 0