笔记
独上西楼-
纸上得来终觉浅,绝知此事要躬行
展开
-
设计模式之单例模式笔记
1.综述 单例模式八种方式 1)饿汉式(静态常量) 2)饿汉式(静态代码块) 3)懒汉式(线程不安全) 4)懒汉式(线程安全,同步方法) 5)懒汉式(线程安全,同步代码块) 6)双重检查 7)静念内部类 8)枚举 2.饿汉式(静态常量) 优缺点说明: 1)优点:这种写法比较简单,就是在类装载的时侯就完成实例化。避免了线程同步 2)缺点:在类装载的时候就完成实例化,没有达到Lazy Loading的效果。如果从始 至终从未使用过这个实例,则会造成内存的浪费 3)这种方式基于classloder机制避免了多线程原创 2020-12-01 20:26:23 · 92 阅读 · 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 · 102 阅读 · 0 评论 -
DVM与JVM区别笔记
区别DVM与JVM 1.首要差别 ·Dalvik:基于寄存器,编译和运行都会更快些 ·JVM:基于栈,编译和运行都会慢些 2.字节码的区别 ·Dalvik:执行.dex格式的字节码,是对.class文件进行压缩后产生的,文件变小 ·JVM:执行.class格式的字节码 3.运行环境的区别 ·Dalvik:一个应用启动都运行一个单独的虚拟机运行在一个单独的进程中 ·JVM:只能运行一个实例,也就是所有应用都运行在同一个JVM中 ...原创 2020-11-23 20:16:34 · 320 阅读 · 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 · 85 阅读 · 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 · 95 阅读 · 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 · 151 阅读 · 0 评论 -
Kotlin VS Java笔记
记录Kotlin 遇到的与Java 不一样的地方 1. Kotlin 所有类和方法默认都是 "final"的, 但是Kotlin 是没有final 关键字的,对应是Java 中的"final" 关键字 常量使用 const val 修饰原创 2020-09-23 09:56:02 · 110 阅读 · 0 评论 -
JSON 使用笔记
在libs 加入gson-2.3.1原创 2020-09-01 17:44:46 · 170 阅读 · 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 · 303 阅读 · 0 评论 -
Recyclerview scrollToPosition &scrollToPositionWithOffset
scrollToPosition 把不在屏幕的 Item 移动到屏幕上,已显示的 Item 不会移动。 scrollToPositionWithOffset 把 Item 移动到可见 Item 的第一项,即使它已经在可见 Item 之中。 offset 参数,表示 Item 移动到第一项后跟 RecyclerView 上边界或下边界之间的距离(默认是 0) ...原创 2020-07-12 20:26:30 · 7083 阅读 · 0 评论