
笔记
独上西楼-
纸上得来终觉浅,绝知此事要躬行
展开
-
设计模式之单例模式笔记
1.综述单例模式八种方式1)饿汉式(静态常量)2)饿汉式(静态代码块)3)懒汉式(线程不安全)4)懒汉式(线程安全,同步方法)5)懒汉式(线程安全,同步代码块)6)双重检查7)静念内部类8)枚举2.饿汉式(静态常量)优缺点说明:1)优点:这种写法比较简单,就是在类装载的时侯就完成实例化。避免了线程同步2)缺点:在类装载的时候就完成实例化,没有达到Lazy Loading的效果。如果从始至终从未使用过这个实例,则会造成内存的浪费3)这种方式基于classloder机制避免了多线程原创 2020-12-01 20:26:23 · 105 阅读 · 1 评论 -
适配器实例模式笔记
例如需要对220V的电压(适配者) , 通过适配器, 转换成 5V 的电压(目标)对象适配器模式使用较多。1. Adaptee角色(适配者,需要适配的接口)class Volt220 { fun getVolt20():Int{ return 220; }}2. Target 角色 (目标)interface FiveVolt { fun getVolt5(): Int}3. Adpater(适配器)class VoltAd.原创 2020-11-24 16:38:10 · 125 阅读 · 0 评论 -
DVM与JVM区别笔记
区别DVM与JVM1.首要差别·Dalvik:基于寄存器,编译和运行都会更快些·JVM:基于栈,编译和运行都会慢些2.字节码的区别·Dalvik:执行.dex格式的字节码,是对.class文件进行压缩后产生的,文件变小·JVM:执行.class格式的字节码3.运行环境的区别·Dalvik:一个应用启动都运行一个单独的虚拟机运行在一个单独的进程中·JVM:只能运行一个实例,也就是所有应用都运行在同一个JVM中...原创 2020-11-23 20:16:34 · 344 阅读 · 0 评论 -
Maven学习笔记
Maven 用于自动化构建项目2.构建[1]概念:以“Java源文件”、“框架配置文件”、“JSP”、“HTML”、“图片“等资源为“原材料”,去“生产”一个可以运行的项目的过程。包括三个过程:-编译-部署-搭建[2]编泽:Java源文件[User.java]一编泽一Class字节码文件[User.class]一交给/VM去执行[3]部署:一个BS项目最终运行的并不是动态Web工程本身,而是这个动态Web工程“编译的结果”生的鸡一处理一熟的鸡动态Web工程一编译、部署一编泽结果Tip原创 2020-11-21 16:56:37 · 100 阅读 · 0 评论 -
工厂方法实例笔记
模拟汽车工厂生产汽车,工厂方法创建具体产品类。1. 抽象产品类//汽车的抽象产品类abstract class AudiCar { abstract fun drive() abstract fun selfNavigation()}定义了两种简单的行为2. 抽象工厂类/** * 汽车抽象工厂 */abstract class AudiFactory { //public abstract <T extends AudiCar> T cr原创 2020-11-18 16:44:45 · 117 阅读 · 0 评论 -
责任链模式实例笔记
以一个采购系统为例, 申请审批, 根据金额,有不同的审批人(主任、院长、副校长、校长)1.类图2. 请求一个数据类data class PurchaseRequest ( val owner:String, val id: Int, var price:Float)3. 抽象处理者abstract class Approver { var approver: Approver? = null var name: String .原创 2020-11-11 17:18:39 · 167 阅读 · 0 评论 -
Kotlin VS Java笔记
记录Kotlin 遇到的与Java 不一样的地方1. Kotlin 所有类和方法默认都是 "final"的, 但是Kotlin 是没有final 关键字的,对应是Java 中的"final" 关键字常量使用 const val 修饰原创 2020-09-23 09:56:02 · 134 阅读 · 0 评论 -
JSON 使用笔记
在libs 加入gson-2.3.1原创 2020-09-01 17:44:46 · 197 阅读 · 0 评论 -
设计模式综述与类图
1. 装饰者模式2. 建造者模式2.1 Android AlertDialog(1) AlertDialog 内部静态类Builder : 创建AlertDialog 对象, 该对象是对AlertController 进行了封装。(2) AlertDialog 持有产品类AlertController, 该类是用于控件的最终显示, AlertController 是在Android 的内部实现,非SDK (com.android.internal.app.AlertController)原创 2020-07-30 16:02:46 · 331 阅读 · 0 评论 -
Recyclerview scrollToPosition &scrollToPositionWithOffset
scrollToPosition把不在屏幕的 Item 移动到屏幕上,已显示的 Item 不会移动。scrollToPositionWithOffset把 Item 移动到可见 Item 的第一项,即使它已经在可见 Item 之中。offset 参数,表示 Item 移动到第一项后跟 RecyclerView 上边界或下边界之间的距离(默认是 0)...原创 2020-07-12 20:26:30 · 7310 阅读 · 0 评论