摘要:
一,添加fragment fragment的ui <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=" 阅读全文
posted @ 2025-09-06 22:07
刘宏缔的架构森林
阅读(12)
评论(0)
推荐(0)
摘要:
一,如图: 查看生成的文件: 指定为默认activity: 编辑:AndroidManifest.xml 把: <activity android:name=".MainActivity" android:exported="false" /> 替换为: <activity android:name 阅读全文
posted @ 2025-09-06 22:07
刘宏缔的架构森林
阅读(10)
评论(0)
推荐(0)
摘要:
一,创建项目 二,完成后效果 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(10)
评论(0)
推荐(0)
摘要:
一,功能 Kotlin 的委托(Delegation)特性通过语法层面的支持,简化了委托模式的实现,分为类委托和属性委托两种核心形式 类委托: 通过 by 关键字将接口或抽象类的实现委托给其他对象,避免继承的局限性 二,例子: 代码: /** * 定义一个学习接口 , 代表有学习的能力 */ 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(16)
评论(0)
推荐(0)
摘要:
一,功能 lazy 惰性初始化 的 属性初始化操作 是 提前定义好的 , 在 调用之前 自动进行初始化操作 , 如果不调用 , 则不进行初始化 ; lateinit 延迟初始化 的 属性初始化操作 , 需要 手动进行初始化 , 如果忘了初始化直接调用就会报错 ; by lazy 适用于 不可变属性 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(44)
评论(0)
推荐(0)
摘要:
一,功能 在定义属性时 , 可以使用 lateinit 关键字 设置该属性的 延迟初始化 , 在 实例对象 创建时不进行初始化 , 在使用该属性之前对其进行初始化即可 ; 表示我先不给一个初始值,编译期的时候也无需进行非空判断,后面我会找时机给他赋值, 即lateinit的作用为编译期在检查时不要因 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(32)
评论(0)
推荐(0)
摘要:
一,功能: ① 声明与实现 : 使用 interface 关键字声明接口 , 实现时需要重写所有的抽象成员 ( 属性 / 方法 ) ; ② 接口成员 : 接口中的 正常成员属性和成员方法默认使用 open 关键字修饰 , 接口中的抽象成员属性和抽象成员方法默认使用 abstract open 关键字 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(4)
评论(0)
推荐(0)
摘要:
一,功能 使用 abstract class 可以 定义抽象类 , 抽象类中可以使用 abstract fun 定义抽象方法 , 也可以定义普通的方法 ; 1 . 定义正常的属性和方法 : 抽象类中可以定义正常的 成员属性 和 成员方法 ; ① 正常成员属性 : 该成员属性可以是常量 , 也可以是变 阅读全文
posted @ 2025-09-06 08:39
刘宏缔的架构森林
阅读(9)
评论(0)
推荐(0)
摘要:
一,功能: 使用 companion object 定义的类中的 伴生对象 , 内部的 成员 和 函数 相当于 静态成员 ; 一个类中只能有一个伴生对象 ; 伴生对象 的 成员函数 和 成员属性 , 可以直接使用类名进行访问 ; 二,例子 代码: open class OpenStudent { c 阅读全文
posted @ 2025-09-06 08:38
刘宏缔的架构森林
阅读(26)
评论(0)
推荐(0)
摘要:
一,功能 单例类简介 : 单例是保证在应用程序的内存中 , 只存在一个实例的设计模式 ; ① 饿汉式 : 这个类只要一声明对象 , 只要该类被调用到 , 不管有没有用到其单例对象 , 必须马上创建一个该单例对象 ( 类对象很饿 ) ; ② 懒汉式 : 声明类对象时 , 什么都不做 , 只有类获取单例 阅读全文
posted @ 2025-09-06 08:38
刘宏缔的架构森林
阅读(6)
评论(0)
推荐(0)
浙公网安备 33010602011771号