摘要: 接口实现监听器 Student.java package test; public class Student { private String name; public Student(String name) { this.name = name; } // 设置监听器接口 interface 阅读全文
posted @ 2021-09-16 15:37 _Sylvan 阅读(30) 评论(0) 推荐(0)
摘要: 浅克隆 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。即对象的浅拷贝会对“主”对象进行拷贝,但不会复制主对象里面的对象。”里面的对象“会在原来的对象和它的副本之间共享。浅拷贝仅仅复制所考虑的对象,而不复制它所引用的对象。 class Score { pr 阅读全文
posted @ 2021-09-16 10:31 _Sylvan 阅读(69) 评论(0) 推荐(0)
摘要: 3.行为型模式 3.1观察者模式 **意图:**定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 **主要解决:**一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。 **何时使用:**一个对象(目标对象)的状态发 阅读全文
posted @ 2021-09-14 10:42 _Sylvan 阅读(66) 评论(0) 推荐(0)
摘要: 2.结构型模式 2.1适配器模式 **意图:**将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 **主要解决:**主要解决在软件系统中,常常要将一些"现存的对象"放到新的环境中,而新环境要求的接口是现对象不能满足的。 何时使用: 1、 阅读全文
posted @ 2021-09-13 19:33 _Sylvan 阅读(58) 评论(0) 推荐(0)
摘要: 序列化 Serializable activity_main.xml <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://sch 阅读全文
posted @ 2021-09-13 09:23 _Sylvan 阅读(44) 评论(0) 推荐(0)
摘要: BottomNavigation 导航布局navigation.xml <?xml version="1.0" encoding="utf-8"?> <navigation xmlns:android="http://schemas.android.com/apk/res/android" xmln 阅读全文
posted @ 2021-09-10 17:27 _Sylvan 阅读(99) 评论(0) 推荐(0)
摘要: Paging 添加paging和room的依赖 def paging_version = "3.0.1" implementation "androidx.paging:paging-runtime:$paging_version" // alternatively - without Androi 阅读全文
posted @ 2021-09-10 17:26 _Sylvan 阅读(249) 评论(0) 推荐(0)
摘要: 权限 activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" and 阅读全文
posted @ 2021-09-09 19:54 _Sylvan 阅读(56) 评论(0) 推荐(0)
摘要: Broadcast 静态注册 在清单文件中静态注册 <!-- 静态注册广播接收者--> <receiver android:name=".CustomReceiver"> <!--设置有序广播的优先级,越大优先级越高--> <intent-filter android:priority="100"> 阅读全文
posted @ 2021-09-09 19:53 _Sylvan 阅读(302) 评论(0) 推荐(0)
摘要: 1.创建型模式 1.1单例模式 **意图:**保证一个类仅有一个实例,并提供一个访问它的全局访问点。 **主要解决:**一个全局使用的类频繁地创建与销毁。 **何时使用:**当您想控制实例数目,节省系统资源的时候。 **如何解决:**判断系统是否已经有这个单例,如果有则返回,如果没有则创建。 **关 阅读全文
posted @ 2021-09-07 19:37 _Sylvan 阅读(48) 评论(0) 推荐(0)
摘要: OOP七大原则 开闭原则 抽象约束、封装变化。对扩展开放,对修改关闭。 通过“抽象约束、封装变化”来实现开闭原则,即通过接口或者抽象类为软件实体定义一个相对稳定的抽象层,而将相同的可变因素封装在相同的具体实现类中。 里氏替换原则 子类可以扩展父类的功能,但不能改变父类原有的功能,尽量不要重写父类的方 阅读全文
posted @ 2021-09-07 19:30 _Sylvan 阅读(220) 评论(0) 推荐(0)
摘要: Navigation 基本操作 activity_main.xml <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://sche 阅读全文
posted @ 2021-08-23 17:07 _Sylvan 阅读(299) 评论(0) 推荐(0)
摘要: ViewModel 添加依赖 implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout x 阅读全文
posted @ 2021-08-17 13:30 _Sylvan 阅读(104) 评论(0) 推荐(0)
摘要: DataBinding 添加依赖 implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' 不用再 findViewById 了; 减少了 Avtivity和Fragment的逻辑处理,使Activity 和Fragment逻辑更加 阅读全文
posted @ 2021-08-17 13:30 _Sylvan 阅读(91) 评论(0) 推荐(0)
摘要: ViewModel 添加依赖 implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout x 阅读全文
posted @ 2021-08-17 13:29 _Sylvan 阅读(140) 评论(0) 推荐(0)